Je veux prendre un tableau [1, 2, 3]
et retourner [1, 2, 3, 1]
.
J'utilise Ramda, et je peux obtenir le résultat souhaité comme ceci:
const fn = arr => R.append(R.prop(0, arr), arr);
Mais j'aimerais le faire sans points. Voici le plus proche que j'ai obtenu:
const fn = R.compose(R.append, R.prop(0)); fn(arr)(arr)
Mais cela semble stupide. Qu'est-ce qui me manque? Merci!
converge
peut être très utile pour des choses comme celle-ci.
const rotate = R.converge(R.append, [R.head, R.identity]) rotate([1, 2, 3]); //=> [1, 2, 3, 1]
Le combinateur S est utile ici:
SS(SC(R.append), R.head, [1, 2, 3]); // => [1, 2, 3, 1]