我正在阅读Nodejs API,我对buffer的迭代感到困惑:
for (const b of buf10) {
console.log(b)
}const用于声明常量,为什么要使用const而不是let呢
发布于 2017-06-21 15:26:21
因为b是循环作用域中的常量。请记住,let和const在ES6中具有块作用域。每次迭代都会创建一个新变量,该变量将在其作用域中保持不变。
发布于 2017-06-21 15:33:46
常量是用来声明常量的,为什么要用常量而不是let呢?
因为您可以将var、let或const用于声明目的,但是它们的行为是不同的。
在这种情况下,
for (const b of buf10) {
console.log(b)
}这是因为对于每一次迭代,你都会得到一个新的const b,并在当前迭代之后结束。
结论是,如果你事先知道你不会修改循环范围内的变量,你就可以安全地去做了。
如果您试图修改循环中的b,您将看到一个错误。
https://stackoverflow.com/questions/44669196
复制相似问题