gpt4 book ai didi

javascript - 当我刚刚访问数组时,为什么会出现 NaN ?

转载 作者:行者123 更新时间:2023-11-28 13:37:47 25 4
gpt4 key购买 nike

  var inc = .001;
var z = new Array(1.0/inc);
for (var x = 0.0; x < 1.0; x += inc) {
z.push(Math.cos(x));
}
var y = new Array(1.0/inc);
for (x = 0.0; x < 1.0; x += inc) {
y.push(1 - ((x * x) / 2) + ((x * x * x * x) / 24));
}
var sum = 0;
for (var i = 0; i < (1.0/inc); i++) {
sum += y[i] - z[i];
}
console.log(sum);
console.log(sum/(1.0/inc));

我对 Javascript 还很陌生,但是这里的数组充满了 float ,当我取差值并尝试打印它们时,它返回 NaN。我被难住了。这是代码( http://jsfiddle.net/2v7wu/ )的摆弄。谢谢!

最佳答案

您正在创建由 1000 个空值组成的数组,然后将额外的元素推送到这些数组上。您的数组最终有 2000 个元素长,其中您将迭代前 1000 个(空)元素。

你不需要在Javascript中声明数组的长度,所以只需使用

var z = []
var y = []

会好的。

最后,您需要将最后一个循环中的数组索引更改为

sum += y[i] - z[i];

关于javascript - 当我刚刚访问数组时,为什么会出现 NaN ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20164027/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com