Why not use a really simple solution with plain ES5?
function lastToFirst(array) { const result = array.slice(0); result.unshift(result.pop()); return result; }
This was literally my first thought when I was reading the problem.
I agree this is readable.
If you handed this to a new developer and asked them what it did they might be lost for a little while.
const lastToFirst = _ => [_.pop(), ..._];
Also, that would change the original array, which is not the intended functionality.
Good point, you'd have to do something like
const lastToFirst = _ => {const $ = _.slice(); return [$.pop(), ...$]};
which is even more convoluted.
How about const lastToFirst = _ => ($ => [$.pop(), ...$])(_.slice()) as even more convoluted example?
const lastToFirst = _ => ($ => [$.pop(), ...$])(_.slice())
Yikes...
I kinda love it.
I mean it would be ES5 if const was var. 😂
const
var
Anyway, I like how concise it is. Three lines of code sure does look more satisfying than whatever I did, despite their similarities.
Are you sure you want to hide this comment? It will become hidden in your post, but will still be visible via the comment's permalink.
Hide child comments as well
Confirm
For further actions, you may consider blocking this person and/or reporting abuse
We're a place where coders share, stay up-to-date and grow their careers.
Why not use a really simple solution with plain ES5?
This was literally my first thought when I was reading the problem.
I agree this is readable.
If you handed this to a new developer and asked them what it did they might be lost for a little while.
Also, that would change the original array, which is not the intended functionality.
Good point, you'd have to do something like
which is even more convoluted.
How about
const lastToFirst = _ => ($ => [$.pop(), ...$])(_.slice())
as even more convoluted example?Yikes...
I kinda love it.
I mean it would be ES5 if
const
wasvar
. 😂Anyway, I like how concise it is. Three lines of code sure does look more satisfying than whatever I did, despite their similarities.