1

我在这里关注第一个和第二个答案。我已经从值中减去了平均值然后console.log()它来检查它。然后我使用 afor-loop来遍历每个值,例如:

for (var i = 0; i < myArray.length; i++) {
    Math.pow(squaredArray[i], 2);
};

我现在也得到一个浮点错误,当我添加for-loop以平方值时,它看起来像。

我究竟做错了什么?

在这里拉小提琴。

4

2 回答 2

1

看起来您正在尝试遍历 myArray 中的值,将它们平方,然后将它们存储在 squaredArray 中。

for (var i = 0; i < myArray.length; i++) {
    squaredArray[i] = Math.pow(myArray[i], 2);
};

“浮点错误”是因为您试图这样做:

Math.pow(undefined, 2);
于 2015-10-23T14:23:24.407 回答
0

如果您不确定输入,您可以使用异常处理进行保护:

for (var i = 0; i < myArray.length; i++) {
    try {
        squaredArray[i] = Math.pow(squaredArray[i], 2);
    }
    catch (e) {
        console.log('input [' + i + '] ' + squareArray[i] + ' caused an exception!');
        console.log(e);
    }
};

此外,您的原始代码是平方的,但没有对它做任何事情,所以我冒昧地将结果分配给它自己。

于 2015-10-23T14:26:14.943 回答