一、es6之let和const

var
1、可以重複聲明
2、不能限制修改
3、沒有塊級作用域

let
1、不能重複聲明
2、可以修改
3、有塊級作用域

const
1、不能重複聲明
2、不能修改
3、有塊級作用域

作用域問題實例:
使用var

<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>Document</title>
  <script>
    window.onload = function () {
      var aBtn = document.getElementsByTagName('input')
      for (var i = 0; i < aBtn.length; i++) {
        (function (i) {
          aBtn[i].onclick = function () {
            alert(i)
          }
        })(i)

      }
    }
  </script>
</head>

<body>
  <input type="button" value="按鈕1">
  <input type="button" value="按鈕2">
  <input type="button" value="按鈕3">
</body>

</html>

使用let

<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>Document</title>
  <script>
    window.onload = function () {
      var aBtn = document.getElementsByTagName('input')
      for (let i = 0; i < aBtn.length; i++) {
        aBtn[i].onclick = function () {
          alert(i)
        }
      }
    }
  </script>
</head>

<body>
  <input type="button" value="按鈕1">
  <input type="button" value="按鈕2">
  <input type="button" value="按鈕3">
</body>

</html>
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章