Es6

 ES6 语法

 

1.1 let/const/var

const 定义的变量,是不能够重新赋值的。所以这个是使用优先级最高的个语法,他能极大保障数据的安全性。

let 跟 const 是一样的,只不过它可以重新被赋值。

let 跟 const 是块级作用域,但是 var 是函数级作用域。

    {
          var x = 333;
          let y = 444;
    }
            console.log(x);
            // console.log(y); 报错

           function msg() {
                console.log("pre", x); //undefined
                if (true) {
                    var x = 323;
                }
                console.log("post", x); //323,记住,var定义的变量是函数级别的作用域
           }
       msg();

for..var / for..let:

//1.异步任务
            //2.闭包,词法作用域
            //3.var/let 区别

            for (let i = 0; i < 10; i++) {
                setTimeout(function() {
                    console.log(i);
                }, 0)
            }
            //0....9
            
            
            
            
            for(var i=0;i<10;i++){
                (function(){
                    
                    var j= i;
                    setTimeout(function(){
                        console.log(j);
                    },0)
                })();
            }
            //手动实现重新绑定,输出也是0...9

//模板字符串
//字符串的写法,现有三种

const aaa ='hello,world'
const bbb = "hello,wrold"
//模板字符串,可以嵌入变量,使用${}占位符
//可以换行
 const ccc = 'hello,${aaa}'

//箭头函数
//在箭头函数内部,没有自己的this指针,它使用的this是来自父元素的

           var id = 666;
                 var ooo = {
                     id:333,
                     xxx: ()=>{
                         console.log('id',this.id);//666
                     }
                 }

//结构化赋值

               var arr =[22,33,44,66];
               /* 
               var a = arr[0];
               var b = arr[1];
               var C = arr[2];
               */
             
              const[aa,bb,...cc]=arr;
              console.log(aa,bb,cc);

            

          const[aa,bb,...cc]=arr;
          console.log(aa,bb,cc);

          const {e,f}={e:333,f:444,g:555};

          const a1 = ['Hello ,wrold'];
          const a2 = [2,3,4,5];


          const a3 =a1+a2;
          console.log(a3);//Hello ,wrold,2,3,4,5

          const ccc1 = [...arr,2324,111,...a1];
          console.log(ccc1);//[22,33,44,66,2324,111,Hello ,wrold]


 

posted @ 2018-11-23 23:51  随★风  阅读(214)  评论(0编辑  收藏  举报