1,作用域
const定义的常量,不能重新赋值,否则会报错。
let声明的变量不会提升。
const callbacks2 = [] for (let j = 0; j <= 2; j++) { callbacks2[j] = function() { return j * 2 } }
可以用{}来隔离作用域。
{ function foo() { return 1 } console.log("foo()===1", foo() === 1) { function foo() { return 2 } console.log("foo()===2", foo() === 2) } console.log("foo()===1", foo() === 1) }