var问题示例
var a = 99; // 全局变量a
f(); // f是函数,虽然定义在调用的后面,但是函数声明会提升到作用域的顶部。
console.log(a); // a=>99, 此时是全局变量的a
function f() {
console.log(a); // 当前的a变量是下面变量a声明提升后,默认值undefined
var a = 10;
console.log(a); // a => 10
}
// 输出结果:
undefined
10
99
const定义静态常量.
let定义变量.
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
<button>按钮1</button>
<button>按钮2</button>
<button>按钮3</button>
<button>按钮4</button>
<button>按钮5</button>
<script type="text/javascript" src="./lib/vue-2.6.10.js"></script>
<script>
//const定义静态常量,let定义变量
const btns = document.getElementsByTagName('button');
//let 和 var
for(let i=0; i<btns.length; i++){
btns[i].addEventListener('click', function(){
console.log("这是第" + i + "个按钮");
})
}
// i = 0; 当var的时候i被一直修改
// btns[i].addEventListener('click', function(){
// console.log("这是第" + i + "个按钮");
// })
// i = 1;
// btns[i].addEventListener('click', function(){
// console.log("这是第" + i + "个按钮");
// })
// i = 2;
// btns[i].addEventListener('click', function(){
// console.log("这是第" + i + "个按钮");
// })
// i = 3;
// btns[i].addEventListener('click', function(){
// console.log("这是第" + i + "个按钮");
// })
// i = 4;
// btns[i].addEventListener('click', function(){
// console.log("这是第" + i + "个按钮");
// })
</script>
</body>
</html>
网友评论