diff --git a/snippets/flip.md b/snippets/flip.md index bcc66e500..02dbe84c7 100644 --- a/snippets/flip.md +++ b/snippets/flip.md @@ -4,16 +4,16 @@ Flip takes a function as an argument, then makes the first argument the last. Return a closure that takes variadic inputs, and splices the last argument to make it the first argument before applying the rest. -```js -const flip = fn => (...args) => fn(args.pop(), ...args); +```js +const flip = fn => (first, ...rest) => fn(...rest, first); ``` -```js -let a = { name: 'John Smith' }; -let b = {}; -const mergeFrom = flip(Object.assign); -let mergePerson = mergeFrom.bind(null, a); -mergePerson(b); // == b -b = {}; -Object.assign(b, a); // == b +```js +let a = { name: 'John Smith' }; +let b = {}; +const mergeFrom = flip(Object.assign); +let mergePerson = mergeFrom.bind(null, a); +mergePerson(b); // == b +b = {}; +Object.assign(b, a); // == b ```