• let和var定义变量的区别


    一、基本用法(let和var区别)

    ES6新增了let命令,用来声明变量,它的用法类似于var,var声明的是全局变量。let声明的变量只在代码块里有效。

    {

      let a =10;

      var b =1;

    }

    console.log(a);  //a is not defined

    console.log(b);       // 1

    上述代码中,分别使用let和var声明了俩个变量,然后在代码块外面调用俩个变量,结果let声明的变量报错,var声明的变量返回正确值。这表明,let声明的变量只在代码块里有效。

    for循环中的计算器,很适合let声明

    for (let i =0 ;i <10 ; i++){

      //....

    }

    console,log(i) ;     //i is not defined

    在上述代码中。计算器i只在for循环体中有效。

    for (var  i =0 ;i <10 ; i++){

      //....

    }

    console,log(i) ;     //i =10

    在上述代码中。变量i是全局变量。

    ------------------------------------------------------------------------------------------------------------------------------------

    总结: 1、var属于ES5规范,let属于ES6规范。

        2、var有预处理机制,let没有。 即预处理机制也就是说变量提升。

         3、  作用域的不同,var是全局作用域,let是局部作用域。

    注意:1、声明变量时,一定要初始化。即var a =1;

        2、 即使在内部,声明变量一定要加上var,不要直接写a =1 ;否则 变量a也会被提升为全局变量。 

            比如说在for循环里面声明的值,就不是全局的 如:for {var a = 'xxx'}

  • 相关阅读:
    Qt QPainter::end: Painter ended whith 2 saced states
    2月6日学习内容
    2月5日学习总结
    2月4日所学内容
    2月3日学习内容
    2月2日学习收获
    2月1日学习内容
    构建之法读后感(一)
    11月从小工到专家读后感(二)
    11月从小工到专家的读后感(一)
  • 原文地址:https://www.cnblogs.com/yjf713/p/12974535.html
Copyright © 2020-2023  润新知