ES6学习笔记

ECMAScript6的新特性

ECMA(欧洲计算机制造商协会)

1、let和const命令

  1)let命令用来生命变量,用法类似于var,使用该命令申明的变量,只在let命令所在的代码块中有效。

  2)js和其他开发语言相比,少了一个作用域。js没有严格意义上的作用域,因为js的变量提升。

    for(var i = 0; i < 18; i++){
    }
    console.log(i) // 18
    for(let i = 0; i < 18; i++){
    // let申明的变量,只在申明所在的大括号内部有效 } console.log(i)
// i is not defined

  3)const常量,一旦被申明,常量的值就不能改变,就像Java中所谓的final

const PI = 3.14
PI = 3 //Assignment to constant variable.

  4)let不存在变量提升

console.log('x',x);
var x = 100;// 先打印后申明不报错,js变量提升,var x变成了全局变量
console.log('x',x);
let x = 100;// x is not defined
    var a = [];
    for (var i = 0; i < 10; i++) {
        a[i] = function(){
            console.log(i);
        }
    }
    a[6]();  // 10
  // 做闭包,立即执行函数
var a = []; for (var i = 0; i < 10; i++) { a[i] = (function(i){ return function(){ console.log(i) } })(i); } a[6](); // 6

 

2、字符串,正则的扩展

3、数值的扩展

4、数组的扩展

5、函数的扩展

6、对象的扩展

7、for...of循环

 

posted @ 2018-05-25 00:21  王子箫  阅读(119)  评论(0编辑  收藏  举报