javascriptでネストされたループを単純化する
Oct 17 2020
javascriptのマップ内にネストされたforeachを簡略化したいのですが、どのようにアプローチすればよいかわかりませんでした
これは私が持っているものです:
var items = [1, 2, 3];
var callbacks = [function() { console.log('hi') }, function() { console.log('hi') }]
var result = items.map(item => {
var intermediate = item;
callbacks.forEach(callback => {
intermediate = callback(intermediate);
})
return intermediate;
});
console.log(result);
あなたはplsを助けることができますか?
回答
3 NinaScholz Oct 17 2020 at 00:52
コールバックを使用して配列を減らし、値をマップすることができます。
const
items = [1, 2, 3],
callbacks = [x => x + 1, x => 2 * x],
result = items.map(item => callbacks.reduce((x, fn) => fn(x), item));
console.log(result);