码迷,mamicode.com
首页 > 其他好文 > 详细

es6——之初体验

时间:2018-01-12 18:34:48      阅读:155      评论:0      收藏:0      [点我收藏+]

标签:tor   color   token   console   变量   []   asc   返回值   let   

前言:ECMAScript和JavaScript是什么关系?

  JavaScript由ECMAScript,BOM,DOM组成,前者是后者的规范,后者是前者的实现

1.let和const命令

 1)let用于声明变量,声明的变量是块级作用域


var
a = []; for (var i = 0; i < 10; i++) { a[i] = function () { console.log(i); }; } a[6](); // 10

var a = [];
for (let i = 0; i < 10; i++) {
  a[i] = function () {
    console.log(i);
  };
}
a[6](); // 6
 

 2)var声明的变量有变量提升的现象,let声明的变量没有

console.log(foo); //输出undifined
var foo = 2;

console.log(bar); //报错RefrenceError
let bar = 2;

3)暂时性死区

var tmp = 123;
if(true){
  tmp = ‘123‘; //referenceError
  let tmp;
}

4)不允许重复声明

5)允许在块级作用域中声明函数,声明的行为类似let,在块级作用域之外不可应用

6)do表达式,使得块级作用域可以有返回值

let x = do {
   let t = f();
   t = t * t + 1;      
}
//x的返回值为(t*t+1)

const命令

const声明一个常量,一旦声明,常量的值不能改变

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

 

2.变量的解构赋值

1)数组的解构赋值

 

es6——之初体验

标签:tor   color   token   console   变量   []   asc   返回值   let   

原文地址:https://www.cnblogs.com/wangpeiyuan/p/8277176.html

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