ES6-不能重复声明变量let和常量const

1.以往js变量

  • var
    • 1.可以重复声明
    • 2.无法限制修改(指不能声明常量)
    • 3.没有块级作用域(指{}这样的)

2.现在ES6变量

  • let 不能重复声明-变量,可以修改,块级作用域
  • const 不能重复声明-常量,不可以修改,块级作用域

3.实例:块级作用域有什么用处

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>块级作用域03</title>
    <script>
        window.onload = function() {
            var aBtn = document.getElementsByTagName('input')
                // 效果1
                // for (var i = 0; i < aBtn.length; i++) {
                //     aBtn[i].onclick = function() {
                //         alert(i);
                //         // 按钮执行结果三次全为3
                //     };
                // }
                // 效果2
                // for (var i = 0; i < aBtn.length; i++) {
                //     (function(i) {
                //         aBtn[i].onclick = function() {
                //             alert(i);
                //             // 按钮执行结果三次分别为0,1,2
                //         };
                //     })(i);
                // }
                // 效果3
            for (let i = 0; i < aBtn.length; i++) {

                aBtn[i].onclick = function() {
                    alert(i);
                    // 按钮执行结果三次也分别为0,1,2
                };
            }
        }
    </script>
</head>
<body>
    <input type="button" value="按钮1">
    <input type="button" value="按钮2">
    <input type="button" value="按钮3">
</body>
</html>
posted @   东血  阅读(934)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律

本站勉强运行 1780 天 21 小时 49 分 60 秒

目录导航
目录导航
ES6-不能重复声明变量let和常量const
1.以往js变量
2.现在ES6变量
3.实例:块级作用域有什么用处
发布于 2020-05-21 22:17
点击右上角即可分享
微信分享提示