Hier ist ein Beispielcode, der zwei Operationen auf jeder Saite aus einem Array führt:Machen Sie eine Funktion allgemeinere sowohl Stachel zu arbeiten [] und String
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' ]
Wie würden Sie diese Funktion allgemeineren noch machen in ein funktioneller Weg, so dass es auf Array-String funktioniert, sowie einfache String-Werte passe daran? Im Moment funktioniert das nur für Arrays von Strings, nicht für Strings.
Dank, Ihre Antworten sind immer willkommen. Also im Falle von Ramda Weg der Dinge, würden Sie 2 separate einfache Funktionen bevorzugen, eine für Array, eine für Strings? –
In Ramda selbst, ja, und das ist meine eigene persönliche Philosophie. Aber natürlich ist es deine Wahl für deinen eigenen Code. –
Hinzugefügt einfachere Version basierend auf 'ifElse' statt' cond'. –