我正在尝试学习Javascript,所以这可能是非常明显的,但下面链接的小提琴失败并出现以下错误“Uncaught TypeError:undefined is is a function”
有问题的代码是
var previousNum = 0;
var currentNum = 0;
var sum = 0;
var fibNums = [1, 1];
while (currentNum < 4000000) {
previousNum = fibNums[fibNums.Length - 2];
currentNum = previousNum + fibNums[fibNums.Length - 1];
fibNums.append(currentNum);
};
for (var x = 0; x < fibNums.Length; x++) {
currentNum = fibNums[x];
if (currentNum % 2 === 0) {
sum += currentNum;
};
};
console.log(sum.toString);
非常感谢任何帮助。感谢。
答案 0 :(得分:4)
数组没有名为.append
的函数。你在寻找的是.push
。
另外,我认为你有一个错字;你的意思是fibNums.length?
,.Length
不是数组的有效属性。
console.log(sum.toString)
也不会达到您的预期。这将打印出函数本身(或者至少是它的美化版本)。您想要console.log(sum.toString())
来实际调用该函数。但即使这样也没有必要。 JavaScript会隐式地将数字类型转换为字符串,因此console.log(sum)
应该足够了。