让和6const的命令
{
A=10;
var b=1;
}
未定义a。 / / referenceerror:
B / / 1
不可变的吊装
变量必须在声明之后使用,否则应该报告错误。
var = 123;
如果(真){
TMP = ABC; / / referenceerror
让TMP;
}
不允许重复声明。
/ /报错
函数(){
A=10;
var a=1;
}
块规模
函数f(){ console.log(我外面!);}
(函数(){())
如果(false){
重复语句函数f
函数f(){ console.log(我在里面!);}
}
(f);
}();
/我在里面!ES5功能提升
我在外面!6块级范围
const的命令
声明一个只读常量,一旦声明,常量的值不能更改。
一旦声明一个变量,它必须立即初始化,不能分配给以后的赋值。
全局变量,这些变量由LET命令、const命令和类命令声明,它们不属于全局对象的属性。
var a=1;
如果节点 / /复制环境,可以写为一个全球。
或通过一般方法,在这个中写入。
窗口:1
B=1;
窗口。
这里是一个单独的介绍ES6 const命令
JS,一直是ECMA的核心,一直没有固定的概念,和6弥补了这一缺陷。
const foo = 'foo;
foo = 'bar '; / /列表分配常数变量。
这个语句是常量的基本类型,例如试图修改初始值是错误的;如果引用类型的值也被使用,但有一个要注意的点,例如:
常量{ };
= 1 };分配给常量变量。
正常的报告是错误的,没有麻烦,再见:
const foo = {1,2,3};
{ 1 } = 4;
console.log(Foo) / / { 1, 4, 3 }
为什么那不是错的它能被修改吗两例不是前者是修改指针相同的地方(熟悉JS引用类型)相应的内容改变了,后者不不变而改变对象的内容,对象为foo的我只是一个指向相应的对象负责你照顾我,所以事情可以修改;如果你不想让内容改变或使用另一种方法;
const foo = object.freeze({1,2,3});
{ 1 } = 4;
console.log(Foo) / / { 1, 2, 3 }
所以你不必担心被修改。