信息:嗨,你可以看到有4個數組,然後與這些數組裏面的數組。我正在使用_.reduce來合計數組的長度。當我用數組數組調用函數時,我得到了NaN。我期望得到19.結合數組的長度,它爲什麼返回NaN? JavaScript
這是爲什麼?感謝您的幫助
var array1 = [[1],[2],[3],[4],[5]];
var array2 = ["a", "b"];
var array3 = [{name : "John"}, {age : 21}];
var array4 = [1,2,3,4,5,6,7,8,9,0];
var array5 = [array4, array3, array2, array1];
var arrayComboLength = function(array){
return _.reduce(array, function(a,b){
return a.length + b.length;
});
}
console.log(arrayComboLength(array5)); --> // NaN
嗨,非常感謝你的工作。在你的解決方案中,如果我不包含0,我得到這個結果 - > // 1,2,3,4,5,6,7,8,9,0225 不知道爲什麼我會得到那。如果我們忽略起始值(0),那麼我就會受到印象。 –
*更正*如果我們忽略起始值(0),我總是從0開始。這不正確嗎? –
@AugustusBrennan不,它使用第一個數組元素,如果你沒有另外指定,並開始在第二個元素上運行。 https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/Reduce – Touffy