数组:List
1、修改数组内容 —> 返回数组
adjust(将数组中指定索引处的值替换为经函数变换的值)
R.adjust(1, R.toUpper, ['a', 'b', 'c', 'd']); //=> ['a', 'B', 'c', 'd']
update(替换数组中指定索引处的值)
R.update(1, '_', ['a', 'b', 'c']); //=> ['a', '_', 'c']R.update(-1, '_', ['a', 'b', 'c']); //=> ['a', 'b', '_']
2、数组内容的逻辑判断 -> 返回布尔类型
all (如果列表中的所有元素都满足 predicate(断言),则返回
true;否则,返回false)const equals3 = R.equals(3);R.all(equals3)([3, 3, 3, 3]); //=> trueR.all(equals3)([3, 3, 1, 3]); //=> false
any(只要列表中有一个元素满足 predicate,就返回
true,否则返回false)const lessThan0 = R.flip(R.lt)(0); // 不熟悉flip函数的同学,地址在这里https://ramda.cn/docs/#flipconst lessThan2 = R.flip(R.lt)(2); // 不熟悉lt函数的同学,地址在这里https://ramda.cn/docs/#ltR.any(lessThan0)([1, 2]); //=> falseR.any(lessThan2)([1, 2]); //=> true
allPass(传入包含多个 predicate 的列表,返回一个 predicate(断言):如果给定的参数满足列表中的所有 predicate ,则返回
true) ```javascript const isQueen = R.propEq(‘rank’, ‘Q’); const isSpade = R.propEq(‘suit’, ‘♠︎’); const isQueenOfSpades = R.allPass([isQueen, isSpade]);
isQueenOfSpades({rank: ‘Q’, suit: ‘♣︎’}); //=> false isQueenOfSpades({rank: ‘Q’, suit: ‘♠︎’}); //=> true ```
