ECMAscript 2015(ES6) 学习足迹(一)

文章目录

      • 变量的扩展
      • 超引用
      • 赋值的扩展
      • Es6的for 循环

变量的扩展

	1. let 在es6中是新增的声明变量的关键字
		特性: 1.没有预解析
	          2. 不允许重复声明
	          3. 块级作用域  {} 称之为代码块

	 2. const
	       		1. 常量 固定的值 不能被修改
	        	    2. 对象obj 属性可以修改的
 

超引用

/*
    *   超引用: (...)
    *       用于取出参数对象中的所有可遍历属性,拷贝到当前对象之中
    *       参数args  可随意定义
    * */
    function fun(...args) {
        console.log(args);//[1, 2, 3, 4, 5, 6]
        for(let i of args){
            console.log(i)//1
                          //2
                          //3
                          //4
                          //5
                          //6
        }
        args.push(8);
        console.log(args);//[1, 2, 3, 4, 5, 6, 8]
    }
    fun(1,2,3,4,5,6)

赋值的扩展

		解构赋值:  可以按照一定的结构进行赋值
		1.对象属性名一定要对上


//数组的格式
        var [a,b,c] = [40,20,30];
        console.log(a,b,c)      //40 20 30

//json格式
        var {a,b,c} = {a:10,c:30,b:20};    //可以调换顺序
        console.log(a,b,c);          //10 20 30

        var [a,[b,c],d] = [5,[10,20],30];  //格式对应即可
        console.log(a,b,c,d)          //5 10 20 30

//混用
        var [{a,b},c,[d,e],f] = [{b : "jack",a : "100"},5,[10,20],30];
        console.log(a,b,c,d,e,f)        //100 jack 5 10 20 30


Es6的for 循环

es5的for循环:

var arr = ["red","green","blue","yellow","black"];
        for(var i = 0;i < arr.length;i++){
            console.log(arr[i]);          //
}

ECMAscript 2015(ES6) 学习足迹(一)_第1张图片

for in 循环:

for(var i in arr){
            console.log(i);   //输出的是索引
            console.log(arr[i]);
}

ECMAscript 2015(ES6) 学习足迹(一)_第2张图片

for of 循环:(不能用来遍历json)

for(var i of arr){
        console.log(i);   //输出的直接是值
}

ECMAscript 2015(ES6) 学习足迹(一)_第3张图片


你可能感兴趣的:(个人总结)