Есть ли какая-либо функция, эквивалентная mapValues ​​в ramda.js (похожая на lodash)? - PullRequest
0 голосов
/ 21 мая 2019

Я использую ramdajs в моем приложении. Я должен использовать утилиту, похожую на mapValues ​​ lodash. В ramdajs уже есть функция, которую я могу использовать. Если нет, как я могу реализовать это с другими функциями в рамде? (Очевидно, я могу использовать nativejs для реализации этого, но я хочу использовать ramdajs)

Ответы [ 2 ]

3 голосов
/ 21 мая 2019

Я думаю, mapObjIndexed мог бы делать то же самое, что и mapValues, но без сокращений.

3 голосов
/ 21 мая 2019

Да, это просто map.

map работает на любом Функторе , и Ramda предоставляет реализации для массивов, объектов и функций,все они являются функторами и делегируют методы map для других типов.

Так что вы можете просто использовать map:

const square = n => n * n

console .log (
  map (square, {a: 1, b: 2, c: 3})     //=> {a: 1, b: 4, c: 9}

) 
console .log (
  map (toUpper, {x: 'foo', y: 'bar'})  //=> {x: 'FOO', y: 'BAR'}
) 
<script src="//cdnjs.cloudflare.com/ajax/libs/ramda/0.26.1/ramda.js"></script><script>
const {map, toUpper} = R                                                      </script>
...