0
私はJSのMDNで配列を平坦化する方法のコードを読んでいます。そして、正常に動作しますが、この場合には動作していない理由を私は理解していない:なぜflattenは機能していませんか?
const data = [null, ['a', 'b', 'c']]
const flattened = data.reduce((acc, cur) => {
if(null != cur)
acc.concat(cur)
}, [])
と、このエラー:
TypeError: Cannot read property 'concat' of undefined
これを修正する方法は?
に渡された関数から返されていない(多分またはfalseの値を?)うち、あなたも早く1によってそれを行うことができ配列を使用して配列をソートする:data.filter(cur => cur!== null).reduce(acc、cur)=> acc.concat(cur)、[]); – thibmaek
@naomikリンクされた質問で、質問の特定の問題は、リンクされた質問の回答によって対処されません。 'Array.prototype.reduce()'コールバック関数から値が返されない質問/回答がありますか? – guest271314
@thibmaek配列上で一度だけ繰り返したいと思っていました。フィルタを使用していた場合は、reduceメソッドをもう一度繰り返します。 –