es6新增的变量let和const的知识点,作为一个web前端开发人员是必学必会的,今天整理下发到博客里,便于复习,也希望对大家有帮助吧。文章讲到,声明变量var和let的区别,let和const的共同特性,const具有的特性。
一、声明变量var和let的区别:
1. let不允许重复声明变量:
<script type="text/javascript">
let dadi = 'tangjiusheng';
let dadi = '08dh';
console.log(dadi);
</script>
结果:会报错
2. let不存在变量提升:
<script type="text/javascript">
console.log(dadi);
let dadi = 569;
</script>
结果:会报错
3.let所声明的变量,只能在let命令所在的代码块内有效。
4.如果未在let语句中初始化变量,则将会自动为其分配JavaScript值undefined。
二、let和const两个变量声明命令,他们都具有下面这些特性:
1、块局作用域;
2、不存在变量提升,一定声明后才能使用;
3、暂时性死区,在代码块内使用let命令声明变量之前,该变量都是不可用的,不受外部变量影响;
4、在相同作用域范围内不允许重复声明;
三、const具有的特性:
const声明的变量不能重新赋值,也因为正是这个规则,const变量声明时一定要先初始化,不能留到以后再赋值,不然就会报错。
原文地址:http://tangjiusheng.com/js/148.html