如何避免嵌套循环
How to avoid nested loops
我需要用have和repo构造这个对象。我觉得嵌套这些地图是一种非常糟糕的做法,这是流程的失败点。这应该怎么写?
let observ = observable$.flatMap(repos => {
return Rx.Observable.from(repos.map(repo => ({hash: getHash(repo), repo})))
})
我认为这种方法没有任何明显的问题。如果要简化代码,可以使用 concatMap
,它将数组流转换为项目流。然后我们可以做一个法线贴图:
let repo$ = observable$.concatMap(identity);
let observ = repo$.map(repo => ({hash: getHash(repo), repo }));
哪里identity === x => x
.
避免使用 identity
调用 observable$
流,也可以在链中更早地应用concatMap
。
相关文章:
- Knockout.js中带有if:子句的嵌套循环
- 有没有一种方法可以在所有嵌套循环之后放置一个标签,以便在一步中将它们全部打断
- JavaScript:在嵌套循环中为数组赋值
- Javascript嵌套循环匹配、组合、替换
- 在嵌套循环中处理 AJAX (Angularjs)
- knockout.js中的嵌套循环
- 在二维数组中搜索比嵌套循环更有效的方法
- 用于动态创建对象的嵌套循环
- 在javascript中嵌套循环
- JavaScript中的嵌入循环和嵌套循环之间有区别吗
- 嵌套循环中数组2d中的javascript变量丢失
- 嵌套循环javascript棋盘
- jQuery嵌套循环nextUntil选择器
- 如何使用嵌套循环使用 Javascript 打印到外部循环的输出中
- 如何在 Javascript 中创建一个模拟 100 行和 10 列网格的嵌套循环
- 如何避免嵌套循环
- 嵌套循环以添加数字
- 如何在比较两个字符串时避免嵌套循环
- 避免多个嵌套循环
- Javascript:避免在嵌套循环中嵌套