let命令
1.使用let命令,会创建一个块作用域
{
// {}包围的代码块就是块作用域。
for (let i=1; i<3; i++) {
console.log(i); // 1 2 undefined
}
}
2.let声明的变量只在块作用域内有效
{
for (let i=1; i<3; i++) {
console.log(i);
}
// ES6默认开启严格模式,引用未声明的变量会报引用错误
console.log(i); // Uncaught ReferenceError: i is not defined
}
3.同个作用域里,使用let不能重复声明变量
{
// 使用let不能重复声明变量
let a = 1;
let a = 2; // Uncaught SyntaxError: Identifier 'a' has already been declared
}
const命令
1.使用const声明一个常量
{
const PI = 3.145926;
}
2.使用const声明的常量不能被修改
{
const PI = 3.145926;
PI = 6; // Uncaught TypeError: Assignment to constant variable.
}
3.使用const声明常量时就要赋值
{
const PI; // Uncaught SyntaxError: Missing initializer in const declaration
PI = 3.145926;
}
4.使用const声明一个引用类型数据的常量
{
const k = {
a: 1
};
// 对象是引用类型,它的指针没变,对象本身改变了
k.a = 2;
k.b = 3;
console.log(k); // {a: 2, b: 3}
}
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。