您的位置:首页 > 其它

es6入门基础——let和const

2018-12-04 11:16 204 查看

今天向大家分享一下我自己的学习体会,如果不够完整和有错误,希望大家指正。

1:let ,let在es6扮演者es5中var的角色,那么它们有什么不同吗?答案是肯定的。
在介绍let和var的区别时,我们首先要清楚块作用域的概念,那么什么又是块作用域呢?
区分块作用域最有效最快捷的方式就是“{}”:一对“{}”中就是一个块作用域。
es6:
结果是:

这里的function里面是一个块作用域,for里面也是一个块作用域。而在for作用域外输出i明显是不好使的,这里显示 not defined是因为es6默认打开了严格模式。
我们再来对比一下es5的写法:

得到结果是:

上面我们清楚的看出了es6中let和es5中的var的第一个区别了:let的作用只在作用域中有效。
我们既然说到第一个区别,当然就有第二个区别了。
第二个区别:let不能重复定义。

得到结果是:

提示我们a重复定义。我们来对比一下es5会不会报错呢。

得到的结果是:

上面就是let和var的区别了。

2:const:在es6中const表示声明一个常量。
需要注意的是:const在声明的时候必须赋值
const声明的变量不能被修改,只能读取。
我们const声明一下试试:


当我们这样写的时候就明显看到报错,所有我们也知道,const声明的变量不能修改。
我们再来试着用const声明一个对象。

得到结果是:

我们看到,是可以向const定义的对象在添加属性的。这是因为对象是引用型,在const中存的是对象的地址,只要对象的地址不变就是符合要求的。
今天的分享就到这里了,如果有什么错误和不足希望大家指正。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: