天天看點

ES6學習筆記01——定義變量

一、let

1、變量沒有提前聲明,沒有預解釋

2、不能重複定義

3、雖然不進行預解釋,但是代碼執行上來也是先将定義的變量提前過濾一遍,一旦發現不合法,就直接報錯了,代碼也不會執行。

二、塊級作用域

{ }是一個私有作用域,塊級作用域

let oLis=document.getElementsByTagName('li');
    for(var i=0;i<oLis.length;i++){
        oLis[i].onclick=function () {
            console.log(i); //永遠輸出4
        }
    }
    for(let i=0;i<oLis.length;i++){
        oLis[i].onclick=function () {
            console.log(i); //相應輸出數,生成私有作用域,變量就是私有變量
        }
    }

    let a=0;
    function fn() {
        console.log(a);//目前作用域沒有,也是會往上查找的
    }
    fn();
           

三、const

1、定義靜态變量,不能修改,必須要指派

2、不可重複聲明(不管是動态變量,還是靜态變量,都不可以重複定義)

繼續閱讀