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"}]
网友评论