为什么返回的是 NaN 而不是数字
Why is this returning NaN instead of a number?
JavaScript noob here...
我正在尝试遍历数组并将值相加。这是我所拥有的:
var totalXyz;
var arrayLength = data.length;
for (var i = 0; i < arrayLength; i++) {
totalXyz += parseInt(data[i]["xyz"]);
}
alert(totalXyz);
该警报返回 NaN 而不是总数。我做错了什么?我已经检查了数据数组是否包含我要添加的数字。只需要现在添加它们。
谢谢!
你需要
totalXyz
开头是一个数字:
var totalXyz = 0;
在你的代码中,你没有初始化它,所以它是undefined
的,undefined
加上任何数字都会给你NaN
。
在执行加法之前,您最初没有分配totalXyz
的数值。
所以这个:
var totalXyz;
totalXyz += parseInt(data[i]["xyz"]);
类似于:
totalXyz = undefined + parseInt(data[i]["xyz"]);
这会产生NaN
,因为undefined
+ 数字 = NaN
在进行计算之前,您需要初始化totalXyz
的数值。
相关文章:
- 如何为排除无穷大和NaN的数字声明Flow类型
- 函数将输出nan而不是数字,为什么
- 打印到控制台时为NaN,但typeof为数字jquery
- 无法可视化百分比数字(获取 NaN)
- 正在获取NaN而不是数字/值
- 在一个很明显是数字的变量上获取NaN
- Javascript:解析csv中的字符串返回NaN(不是数字)
- 缺少基于非数字(NaN)的概念
- NaN错误和数字保持不变
- 添加两个数字变量将返回 NaN
- NaN Javascript 和 Jquery 尝试连接数字和字符串时出错
- Javascript将两个数字相乘返回NaN
- 乘法后,js 返回数字和 NaN
- 使用 jQuery .val() 设置时在 中显示为 NaN 的数字
- 为什么从数组中获取值时会出现 NaN(不是数字)错误
- 数组等于自身加数字 = NaN
- Javascript 总返回 NaN 为 4 位数字
- javascript 字符串到数字 = NaN
- 为什么两个数字相减会导致 NAN
- 为什么不是数字(NaN)是Javascript中的一个数字