码迷,mamicode.com
首页 > Web开发 > 详细

ES6 第一章 let和const命令 具体参照http://es6.ruanyifeng.com

时间:2019-06-19 20:11:11      阅读:161      评论:0      收藏:0      [点我收藏+]

标签:命令   ati   解析   script   声明   number   ++   operator   变量提升   

1.let类似于var用用来定义变量

1)let没有预解析,不存在变量提升

// var 的情况
console.log(foo); // 输出undefined
var foo = 2;

// let 的情况
console.log(bar); // 报错ReferenceError
let bar = 2;

2)let定义的变量在其定义之前使用都会报错,称为暂时性死区(TDZ)

var tmp = 123;
if (true) {
  tmp = ‘abc‘; // ReferenceError
  let tmp;
}
3)不允许重复声明
用let定义的变量名不能重复再定义,如果定义就会报错。
4)块级作用域
for循环类似于一个父级作用域
for(i=0;i<3;i++){
  let i=‘abc‘;
  console.log(i);
}
//输出3次 abc
类似于
{
  let a=1;
    {
      let a=2;
      console.log(a);//2
  }
  console.log(a);//1
}

2.const用来定义常量

定义完必须有值不能更改。后赋值或重复赋值都会报错。

const实际上保证的,并不是变量的值不得改动,而是变量指向的那个内存地址所保存的数据不得改动

ES6 第一章 let和const命令 具体参照http://es6.ruanyifeng.com

标签:命令   ati   解析   script   声明   number   ++   operator   变量提升   

原文地址:https://www.cnblogs.com/zhaoqiusheng/p/11053534.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!