为什么在if语句不成立的情况下还能执行里面的setTimeout事件呢
<div id="light" class="white_content">
<a href="javascript:void(0)" onclick="two()" style="z-index:99;left: -5px;">×</a>
<a href="">
<img src="./img/shang.jpg" width="100%" height="100%" alt="" >
</a>
</div>
<script>
function one(){
document.getElementById('light').style.display='block';
}
function two(){
document.getElementById('light').style.display='none';
}
var a1 = document.getElementById('light');
a1.style.display='none';
var i = 0;
while (i < 100) {
if(a1.style.display == 'none'){
(function(i) {
setTimeout(function() {
console.log(a1.style.display);
one();
console.log(i)
}, 3000 * i)
})(i++)
}
}
</script>