ES 6 精讲 (一) 认识一下ES6

本文介绍了ES6中的一个重要特性,通过实例解析了块级作用域带来的变化,特别是`let`关键字如何解决变量冲突问题。文章还探讨了`var`与`let`的区别,并引入了解构赋值的概念,帮助读者更好地理解和运用ES6的这些新特性。
摘要由CSDN通过智能技术生成

1-1 认识一下ES6

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

我们来举个例子说明一下这个问题

这个例子简单实现3个目标小方块点击效果展示
我们想通过这样的方式 实现 当我们点击 a b c 三个小块的时候弹出0 1 2
但是我们写出来的 不管点击哪个都只会弹出3

<!DOCTYPE html>
<html>
  <head>
    <title>document</title>
    <meta charset="utf-8" />
    <style type="text/css"></style>
  </head>

  <body>
    <input type="button" value="a" />
    <input type="button" value="b" />
    <input type="button" value="c" />
  </body>
</html>
<script type="text/javascript">
  window.onload = function () {
    let aBtn = document.getElementsByTagName("input");

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

结果是这样的
但是我们写出来的 不管点击哪个都只会弹出3
在这里插入图片描述
那么我们怎么去解决这个问题呢?
1、立即执行函数,或者说构造一个闭包
在这里插入图片描述
2、我们尝试利用更加简单的方法,
也是ES6 的方法 let 定义块级作用域
只需要将var 改成 let 就可以解决

那么为什么呢?
在这里插入图片描述
我们再用一个更加直观的例子说明一下这个问题
在这里插入图片描述
在这里插入图片描述
我们再次鉴定一下var 和 let的关系
1、var 是函数级别的 函数内外都是一样的 是一个值 要变一起变
2、let 则只在块内起作用 是三个独立的个体

我来弄两个简单的图,加强你的认识一下
在这里插入图片描述
立即执行函数 或者 for内用 let
在这里插入图片描述
在这里插入图片描述

2-1 解构赋值

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
我们现在展示一下
强行分成两句后的结果

在这里插入图片描述
我们把它分开试试?
在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值