<body> <button>第1个按钮</button> <button>第2个按钮</button> <button>第3个按钮</button> <button>第4个按钮</button> <button>第5个按钮</button> <script> // 在ES5之前 var没有块级作用域 比如(for/if) 只有借助function 函数才有块级作用域 // 在ES6中 加入了let关键字 有(if/for)的块级作用域 // var btns = document.querySelectorAll('button'); // for (var i = 0; i < btns.length; i++) { // btns[i].addEventListener('click', function() { // alert('第' + i + '个被点击了') // 无论点击哪一个按钮都是第5个被点击了 因为在ES5之前 var没有块级作用域 比如(for/if) // }) // } const btns = document.querySelectorAll('button'); for (let i = 0; i < btns.length; i++) { btns[i].addEventListener('click', function() { alert("第" + (i + 1) + '个被点击了') }) } </script> </body>