为什么 Reduce Helper 返回 NaN?
Why Reduce Helper is returning NaN?
我在 this website 上尝试了这段代码,它工作正常并按预期返回了 60,但是当我尝试在 HTML 网页上 运行 它时,首先它 returns 10 和其他 2 个值将是 NaN,我不明白为什么会发生此错误。
我会很感激你的解决方案。
var numbers = [ 10, 20, 30 ] ;
numbers.reduce(function(sum , number){
return console.log( sum + number);
} , 0);
你不应该 return console.log
。这总是 returns undefined:
const numbers = [ 10, 20, 30 ] ;
numbers.reduce(function(sum , number) {
console.log(sum + number);
return sum + number;
} , 0);
在 reduce 函数中,您正在 returning console.log()
。 console.log()
没有 return 任何东西 (undefined
),所以你的总和也变得未定义。 undefined + 10
会给你 NaN
错误。
如果您想在控制台中查看内容,和 的功能会按预期工作,您将需要 1) return 数字和 2) 包含一个console.log
在你的代码中。换句话说,像
var numbers = [ 10, 20, 30 ] ;
numbers.reduce(function(sum , number){
console.log( sum + number);
return sum + number;
} , 0);
我在 this website 上尝试了这段代码,它工作正常并按预期返回了 60,但是当我尝试在 HTML 网页上 运行 它时,首先它 returns 10 和其他 2 个值将是 NaN,我不明白为什么会发生此错误。 我会很感激你的解决方案。
var numbers = [ 10, 20, 30 ] ;
numbers.reduce(function(sum , number){
return console.log( sum + number);
} , 0);
你不应该 return console.log
。这总是 returns undefined:
const numbers = [ 10, 20, 30 ] ;
numbers.reduce(function(sum , number) {
console.log(sum + number);
return sum + number;
} , 0);
在 reduce 函数中,您正在 returning console.log()
。 console.log()
没有 return 任何东西 (undefined
),所以你的总和也变得未定义。 undefined + 10
会给你 NaN
错误。
如果您想在控制台中查看内容,和 的功能会按预期工作,您将需要 1) return 数字和 2) 包含一个console.log
在你的代码中。换句话说,像
var numbers = [ 10, 20, 30 ] ;
numbers.reduce(function(sum , number){
console.log( sum + number);
return sum + number;
} , 0);