ES6中let、const的介绍及应用

let的特性:

一、在{ }中存在局部做用域;javascript

二、没有变量提高;java

const的特性:

一、不存在变量提高问题,只有定义以后才能使用此变量;es6

二、const定义的常量,没法被从新赋值;spa

三、当定义常量的时候,必须定义初始化,不然会报错;code

四、const定义的常量也有块级做用域。blog

代码展现ip

for (let i = 0; i < 5; i++) {
  const a = "hello";
  console.log(a);
}
console.log(a);

输出结果作用域

let的应用

当咱们点击这3个按钮的时候都输出的是:“我是第3个按钮”get

<body>
    <input type="button" value="按钮1">
    <input type="button" value="按钮2">
    <input type="button" value="按钮3">
    <script type="text/javascript">
        var btns = document.getElementsByTagName("input"); for (var i = 0; i < 3; i++) { btns[i].onclick = function () { console.log("我是第" + (i) + "个按钮"); }; } </script>
</body>

es6的解决方式:使用let声明变量i

<body>
    <input type="button" value="按钮1">
    <input type="button" value="按钮2">
    <input type="button" value="按钮3">
    <script type="text/javascript">
        var btns = document.getElementsByTagName("input"); for (let i = 0; i < 3; i++) { btns[i].onclick = function () { console.log("我是第" + (i) + "个按钮"); }; } </script>
</body>

输出结果input

相关文章
相关标签/搜索