zoukankan      html  css  js  c++  java
  • ES6--let和const

    var 声明的缺点

    1、可以重复声明

    2、无法限制修改

    3、没有块级作用域

    let与const

    声明

    都不能重复声明

    1 let a = 1
    2 let a = 2
    3 //报错 Identifier 'a' has already been declared。const同

    修改

    let 声明的是变量,可以修改。const声明的是常量,不能修改

    不能给常量赋值修改

    块级作用域

    let和const都是块级作用域

    块级作用域用途举例:

    1   var aBtn = document.getElementsByTagName('input');
    2 
    3     for (var i = 0; i < aBtn.length; i++) {
    4         aBtn[i].onclick = function () {
    5             alert(i)
    6         }
    7     }

    想要的效果是点击按钮,弹出对应的index。这样写导致全部弹出3

    第一种修改方式(立即执行函数)

      for (var i = 0; i < aBtn.length; i++) {
            (function (i) {
                aBtn[i].onclick = function () {
                    alert(i)
                }
            })(i)
        }

    第二种方式,利用块级作用域,使用let声明i

    1   for (let i = 0; i < aBtn.length; i++) {
    2         aBtn[i].onclick = function () {
    3             alert(i)
    4         }
    5     }
  • 相关阅读:
    阿凯
    hlg神秘植物--矩阵快速幂
    poj1185炮兵阵地--状态dp
    该怎么办
    hlg2096---状态压缩dp
    这个世界

    第三篇
    LCT板子
    spoj COT
  • 原文地址:https://www.cnblogs.com/lianglanlan/p/9812902.html
Copyright © 2011-2022 走看看