Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/426.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
简化javascript中的嵌套循环_Javascript_Foreach - Fatal编程技术网

简化javascript中的嵌套循环

简化javascript中的嵌套循环,javascript,foreach,Javascript,Foreach,我想用javascript简化映射中嵌套的foreach,但不确定如何实现它 这就是我所拥有的: var项目=[1,2,3]; var回调=[function(){console.log('hi')},function(){console.log('hi')}] var result=items.map(item=>{ var中间值=项目; callbacks.forEach(callback=>{ 中间=回调(中间); }) 返回中间体; }); 控制台日志(结果)您可以使用回调减少数组并映

我想用javascript简化映射中嵌套的foreach,但不确定如何实现它

这就是我所拥有的:

var项目=[1,2,3];
var回调=[function(){console.log('hi')},function(){console.log('hi')}]
var result=items.map(item=>{
var中间值=项目;
callbacks.forEach(callback=>{
中间=回调(中间);
})
返回中间体;
});

控制台日志(结果)您可以使用回调减少数组并映射值

const
项目=[1,2,3],
回调=[x=>x+1,x=>2*x],
结果=items.map(item=>callbacks.reduce((x,fn)=>fn(x,item));

控制台日志(结果)您可以使用回调减少数组并映射值

const
项目=[1,2,3],
回调=[x=>x+1,x=>2*x],
结果=items.map(item=>callbacks.reduce((x,fn)=>fn(x,item));

控制台日志(结果)必须对所有元素运行所有回调。我不知道你怎么能期望少做这些。你说的“简化”是什么意思?你现在的东西有什么不对?无论如何,如果你想做的话“针对所有元素的一系列操作*我建议查看传感器-处理此问题的结构。请参阅:| |必须对所有元素运行所有回调。我不知道你希望如何减少这一点。你所说的“简化”是什么意思?你现在所拥有的有什么错?无论如何,如果你想对所有元素采取“一系列行动”,我建议你看看传感器——处理这一问题的结构。参见:||