es6学习:let与const

1:let用于定义变量即定义的值可以改变,const用于定于常量即定义的值不可以被改变

    let i=1;
    i=2;
    console.log(i);//2
    const j=2;
    j=3;
    console.log(j);//执行会报错

2:用var定义的变量可以重复声明,但是用let和const定义了的变量和常量都不能重复声明,否则会报错


    var i=5;
    var i=6;
    consle.log(i);
    let i=1;
    let i=2;
    consle.log(i);
    const k=3;
    const k=4;
    consle.log(k);

3:var声明的变量没有块级作用域,但是let有

  for(var i=0;i<5;i++){
      //do nothing
  }
  console.log(i);

  for(let j=0;j<5;j++){
      //do nothing
  }
  console.log(j);

4:var声明的变量可以变量提升,let不存在变量提升。

    
    console.log(i);//打印出undefined,但未报错
    var i=0;

    console.log(j);//报错,j is undefined
    let j=1;

   

5:一旦用const声明了一个常量后必须立即赋值否则会报错

const i;

6:var声明的变量存在全局属性,但是用let声明的变量和用const声明的常量不存在全局属性

    var i=0;
    console.log(window.i);//0

    let j=1;
    console.log(window.j);//undefined

以上用法总结的不太全面,如有错误请不吝赐教!!!

猜你喜欢

转载自blog.csdn.net/buddha_itxiong/article/details/81120327