[英]How can the collection be accessed during a Ramda map?
举一个非常简单的例子:
R.map((a, b) => {
console.log(a, b) // 1, undefined
}, [1, 2, 3])
如何在地图中整体访问收藏集?
使用该集合的一个人为的示例可能是:
R.map((item, collection) => {
console.log(item === collection.length)
}, [1, 2, 3])
我可以先将其存储在变量中,但这在函数链的末尾
R.map
不允许您访问映射函数内部的集合,但是您可以围绕映射函数创建一个闭包,以便给自己一个为集合指定名称的机会。
((collection) => R.map((item) => {
console.log(item === collection.length)
}, collection))([1, 2, 3]);
正如评论所建议的那样,Ramda默认情况下不包括此表是有充分的理由的。 但是有一个称为addIndex
的装饰器,用于添加索引和集合:
const fn = R.addIndex(map)((elt, idx, coll) => elt == coll.length);
fn([1, 2, 3]); //=> [false, false, true]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.