-1
私は練習に取り組んでいます。配列の配列から始めて、与えられたすべての配列のすべての要素を含む単一の配列に縮小と連結を使用する必要があります。Javascript:concatで縮小すると
だから私はこのことから開始します。
var array = [[1,2,3],[4,5,6],[7,8,9]]
、私はこれで運動しを解く:
:私はこれを持ってvar new_array = array.reduce(function(prev,cur){return prev.concat(cur);})
だから、それは動作しますが、入力にconsole.log(new_array)
[1, 2, 3, 4, 5, 6, 7, 8, 9]
しかし、このように関数を変更した場合:
私はこのエラーが出るのはなぜ"TypeError: prev.concat is not a function
:
var new_array = array.reduce(function(prev,cur){return prev.concat(cur);},0)
私はこのエラーを取得しますか?おかげで事前
のように、アレイと
0
を交換するので配列を0に連結することはできません –2番目(およびoptio 'Array.prototype.reduce'のパラメータは初期値です。あなたのケースでは、初期値として '0'を渡しているので、関数が最初に実行されたときに' number'に 'concat'メソッドがないので明らかに失敗する' prev.concat'を呼び出そうとします。 – haim770
reduceの2番目のバージョンでは何を達成しようとしますか? – Harald