<body>
<button class="btn1">1</button>
<button class="btn2">2</button>
<script>
var button1 = document.querySelector('.btn1');
button1.addEventListener('click', function () {
num = 10;
})
var num = 0;
var button2 = document.querySelector('.btn2');
button2.addEventListener('click', function () {
num++;
console.log(num); //如果点击了button1,为11;如果不点击button1,为1
})
</script>
</body>
请问为什么当点击button1之后,button2里的num++的num值就在num=10的基础上开始增加了,而不是在num=0的基础上增加?var num=0也是全局变量,num=10也是全局变量,但是为什么函数内部的全局变量就更有优先级呢?以及这端代码的预解析可以拆解一下吗?感谢大神们!
没有你所谓“优先级”。
所有的
num
都是 同一个 变量。