数字总和 returns NaN
Sum numbers returns NaN
我正在尝试对 div 中的数字求和,所以,我做了:
$(document).ready(function() {
var numbers, sumNumbers;
$(".item").each(function() {
numbers = $(this).children().text();
numbers = +numbers;
sumNumbers += numbers;
});
console.log(sumNumbers);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="item">
<span class="itemNum">0</span>
</div>
<div class="item">
<span class="itemNum">2</span>
</div>
<div class="item">
<span class="itemNum">1</span>
</div>
但是,使用 +numbers
将 numbers
从文本转换为数字同样返回 NaN,为什么?我也已经尝试过 Number(numbers)
但结果是一样的。
你没有初始化sumNumbers
,所以你得到undefined
+一个数字=NaN
var numbers, sumNumbers = 0;
试试这个
var numbers=0, sumNumbers=0; //initilize numbers & sumNumbers;
$(".item").each(function () {
numbers = $(this).children().text() * 1; // *1 convert string to number
sumNumbers += numbers;
});
console.log(sumNumbers);
我正在尝试对 div 中的数字求和,所以,我做了:
$(document).ready(function() {
var numbers, sumNumbers;
$(".item").each(function() {
numbers = $(this).children().text();
numbers = +numbers;
sumNumbers += numbers;
});
console.log(sumNumbers);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="item">
<span class="itemNum">0</span>
</div>
<div class="item">
<span class="itemNum">2</span>
</div>
<div class="item">
<span class="itemNum">1</span>
</div>
但是,使用 +numbers
将 numbers
从文本转换为数字同样返回 NaN,为什么?我也已经尝试过 Number(numbers)
但结果是一样的。
你没有初始化sumNumbers
,所以你得到undefined
+一个数字=NaN
var numbers, sumNumbers = 0;
试试这个
var numbers=0, sumNumbers=0; //initilize numbers & sumNumbers;
$(".item").each(function () {
numbers = $(this).children().text() * 1; // *1 convert string to number
sumNumbers += numbers;
});
console.log(sumNumbers);