path、pathOr、pathEq

1 path

定义:返回对象在给定路径上的值
本质:浅拷贝

R.path(['a', 'b'], {a: {b: 2}}); //=> 2
R.path(['a', 'b'], {c: {b: 2}}); //=> undefined
2 pathOr

定义:返回对象在给定路径上的值,否则返回默认值
本质:浅拷贝
vs path:path 适用于返回 基本标量类型,pathOr 可用于返回 复合数据类型

R.pathOr('N/A', ['a', 'b'], {a: {b: 2}}); //=> 2
R.pathOr('N/A', ['a', 'b'], {c: {b: 2}}); //=> "N/A"
3 pathEq

定义:判断对象在嵌套路径上是否为给定的值
搭档:R.filter
场景:列表过滤

var obj1 = {
 author: 'szw'
}

var obj2 = {
  author: 'js'
}

var obj3 = {
  author: 'js'
}

var objArr = [obj1, obj2, obj3]

var isEq = R.pathEq(['author'], 'js')

console.log(R.filter(isEq, objArr))

output:

[{"author":"js"},{"author":"js"}]
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容