当我将一个变量乘以 2 并将该值赋给另一个变量时,为什么会得到 0?基本上,我试图在每次按下按钮时逐渐显示/隐藏 block 。但是,当我执行 count++ * 2 时,它会起作用。
请参阅下面的代码以供引用。
var count = 0,
num = count * 2;
$('.load').on('click', function() {
$('.blocks').show();
$('.blocks').slice(num).hide();
count++;
});
console.log(num); // num is = to 0
.load {
display: block;
margin: 40px 0 0 0;
}
.blocks {
width: 30px;
height: 30px;
background: #000;
display: inline-block;
margin: 5px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<button class="load">Load this</button>
<div class="blocks"></div>
<div class="blocks"></div>
<div class="blocks"></div>
<div class="blocks"></div>
<div class="blocks"></div>
<div class="blocks"></div>
<div class="blocks"></div>
<div class="blocks"></div>
<div class="blocks"></div>
<div class="blocks"></div>
最佳答案
// initial variable initialization
var count = 0,
num = count * 2;
$('.load').on('click', function() {
$('.blocks').show();
$('.blocks').slice(num).hide();
// increment the count value
count++;
// re assign a new num value
num = count * 2;
console.log(num);
// num is 0,2,4,6
});
console.log(num); // num is = to 0
关于javascript - 乘以 JavaScript 变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30678493/