Вот пример кода, который выполняет 2 операции на каждой строки из массива:Сделать функцию более общим для работы как на жала [] и строки
const R = require('ramda')
const myArray = [ 'one', 'two', 'tree', 'four', 'five' ]
function capitalize(x) {
return x.toUpperCase()
}
function removeLastCharacter(x) {
return x.slice(0, -1)
}
let stringManipulator = R.map(R.compose(capitalize, removeLastCharacter))
// => [ 'ON', 'TW', 'TRE', 'FOU', 'FIV' ]
Как бы вы сделать эту функцию более общий характер еще в функциональный способ, поэтому он будет работать с массивом строки, а также с простыми строковыми значениями passe? Сейчас это работает только в массиве строк, а не в строках.
Спасибо, ваши ответы всегда ценятся. Итак, в случае с вещами Ramda, вы предпочтете две отдельные простые функции, одну для массива, одну для строк? –
В самой Рамде, да, и это моя личная философия. Но, очевидно, это ваш выбор для вашего собственного кода. –
Добавлена более простая версия, основанная на 'ifElse', а не' cond'. –