sta*_*lei 1 javascript loops for-loop ecmascript-6
传统上,我们使用
for (var key in yourobject) {
console.log(key, yourobject[key]);
}
Run Code Online (Sandbox Code Playgroud)
但是对于es6,我应该改为使用const key
还是let key
改为?
这与您是否在循环中使用它们无关.无论您的程序需要什么,请使用正确的绑定
const
绑定无法重新分配let
绑定可以重新分配如果您不需要重新分配变量的能力,请使用const
- 它更严格,有助于保护您免受意外重新分配
如果您确实需要重新分配的能力,除了使用let
(或var
)之外别无选择
我喜欢@jfriend的决策树,但我可能会像这样写^ _ ^
const
let
var
所以,因为我在for循环中使用它,在每个循环中重新分配密钥,我应该使用let?
编号const
和let
绑定仅在定义的上下文/范围内可用.在for
or while
循环的情况下,绑定仅在循环体中可用 - 不进行重新分配
for (const x of [1,2,3])
console.log(x)
//1
//2
//3
for (const {a} of [{a:1}, {a:2}, {a:3}])
console.log(a)
//1
//2
//3
// const x and const a are not available outside of the loop
console.log(x) // ERROR: Uncaught ReferenceError: x is not defined
console.log(a) // ERROR: Uncaught ReferenceError: a is not defined
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
417 次 |
最近记录: |