Travis build: 1301
This commit is contained in:
16
README.md
16
README.md
@ -436,20 +436,20 @@ 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.
|
Return a closure that takes variadic inputs, and splices the last argument to make it the first argument before applying the rest.
|
||||||
|
|
||||||
```js
|
```js
|
||||||
const flip = fn => (...args) => fn(args.pop(), ...args);
|
const flip = fn => (first, ...rest) => fn(...rest, first);
|
||||||
```
|
```
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
<summary>Examples</summary>
|
<summary>Examples</summary>
|
||||||
|
|
||||||
```js
|
```js
|
||||||
let a = { name: 'John Smith' };
|
let a = { name: 'John Smith' };
|
||||||
let b = {};
|
let b = {};
|
||||||
const mergeFrom = flip(Object.assign);
|
const mergeFrom = flip(Object.assign);
|
||||||
let mergePerson = mergeFrom.bind(null, a);
|
let mergePerson = mergeFrom.bind(null, a);
|
||||||
mergePerson(b); // == b
|
mergePerson(b); // == b
|
||||||
b = {};
|
b = {};
|
||||||
Object.assign(b, a); // == b
|
Object.assign(b, a); // == b
|
||||||
```
|
```
|
||||||
|
|
||||||
</details>
|
</details>
|
||||||
|
|||||||
@ -64,7 +64,7 @@ Promise<span class="token punctuation">.</span><span class="token function">reso
|
|||||||
<span class="token keyword">let</span> p2 <span class="token operator">=</span> Promise<span class="token punctuation">.</span><span class="token function">resolve</span><span class="token punctuation">(</span><span class="token number">2</span><span class="token punctuation">);</span>
|
<span class="token keyword">let</span> p2 <span class="token operator">=</span> Promise<span class="token punctuation">.</span><span class="token function">resolve</span><span class="token punctuation">(</span><span class="token number">2</span><span class="token punctuation">);</span>
|
||||||
<span class="token keyword">let</span> p3 <span class="token operator">=</span> <span class="token keyword">new</span> <span class="token class-name">Promise</span><span class="token punctuation">(</span>resolve <span class="token operator">=></span> <span class="token function">setTimeout</span><span class="token punctuation">(</span>resolve<span class="token punctuation">,</span> <span class="token number">2000</span><span class="token punctuation">,</span> <span class="token number">3</span><span class="token punctuation">));</span>
|
<span class="token keyword">let</span> p3 <span class="token operator">=</span> <span class="token keyword">new</span> <span class="token class-name">Promise</span><span class="token punctuation">(</span>resolve <span class="token operator">=></span> <span class="token function">setTimeout</span><span class="token punctuation">(</span>resolve<span class="token punctuation">,</span> <span class="token number">2000</span><span class="token punctuation">,</span> <span class="token number">3</span><span class="token punctuation">));</span>
|
||||||
<span class="token function">Pall</span><span class="token punctuation">(</span>p1<span class="token punctuation">,</span> p2<span class="token punctuation">,</span> p3<span class="token punctuation">).</span><span class="token function">then</span><span class="token punctuation">(</span>console<span class="token punctuation">.</span>log<span class="token punctuation">);</span>
|
<span class="token function">Pall</span><span class="token punctuation">(</span>p1<span class="token punctuation">,</span> p2<span class="token punctuation">,</span> p3<span class="token punctuation">).</span><span class="token function">then</span><span class="token punctuation">(</span>console<span class="token punctuation">.</span>log<span class="token punctuation">);</span>
|
||||||
</pre><button class="primary clipboard-copy">📋 Copy to clipboard</button></div></div><div class="card fluid"><h3 id="flip" class="section double-padded">flip</h3><div class="section double-padded"><p>Flip takes a function as an argument, then makes the first argument the last.</p><p>Return a closure that takes variadic inputs, and splices the last argument to make it the first argument before applying the rest.</p><pre class="language-js"><span class="token keyword">const</span> <span class="token function-variable function">flip</span> <span class="token operator">=</span> fn <span class="token operator">=></span> <span class="token punctuation">(</span><span class="token operator">...</span>args<span class="token punctuation">)</span> <span class="token operator">=></span> <span class="token function">fn</span><span class="token punctuation">(</span>args<span class="token punctuation">.</span><span class="token function">pop</span><span class="token punctuation">(),</span> <span class="token operator">...</span>args<span class="token punctuation">);</span>
|
</pre><button class="primary clipboard-copy">📋 Copy to clipboard</button></div></div><div class="card fluid"><h3 id="flip" class="section double-padded">flip</h3><div class="section double-padded"><p>Flip takes a function as an argument, then makes the first argument the last.</p><p>Return a closure that takes variadic inputs, and splices the last argument to make it the first argument before applying the rest.</p><pre class="language-js"><span class="token keyword">const</span> <span class="token function-variable function">flip</span> <span class="token operator">=</span> fn <span class="token operator">=></span> <span class="token punctuation">(</span>first<span class="token punctuation">,</span> <span class="token operator">...</span>rest<span class="token punctuation">)</span> <span class="token operator">=></span> <span class="token function">fn</span><span class="token punctuation">(</span><span class="token operator">...</span>rest<span class="token punctuation">,</span> first<span class="token punctuation">);</span>
|
||||||
</pre><label class="collapse">Show examples</label><pre class="language-js"><span class="token keyword">let</span> a <span class="token operator">=</span> <span class="token punctuation">{</span> name<span class="token punctuation">:</span> <span class="token string">'John Smith'</span> <span class="token punctuation">};</span>
|
</pre><label class="collapse">Show examples</label><pre class="language-js"><span class="token keyword">let</span> a <span class="token operator">=</span> <span class="token punctuation">{</span> name<span class="token punctuation">:</span> <span class="token string">'John Smith'</span> <span class="token punctuation">};</span>
|
||||||
<span class="token keyword">let</span> b <span class="token operator">=</span> <span class="token punctuation">{};</span>
|
<span class="token keyword">let</span> b <span class="token operator">=</span> <span class="token punctuation">{};</span>
|
||||||
<span class="token keyword">const</span> mergeFrom <span class="token operator">=</span> <span class="token function">flip</span><span class="token punctuation">(</span>Object<span class="token punctuation">.</span>assign<span class="token punctuation">);</span>
|
<span class="token keyword">const</span> mergeFrom <span class="token operator">=</span> <span class="token function">flip</span><span class="token punctuation">(</span>Object<span class="token punctuation">.</span>assign<span class="token punctuation">);</span>
|
||||||
|
|||||||
@ -4,11 +4,11 @@ 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.
|
Return a closure that takes variadic inputs, and splices the last argument to make it the first argument before applying the rest.
|
||||||
|
|
||||||
```js
|
```js
|
||||||
const flip = fn => (first, ...rest) => fn(...rest, first);
|
const flip = fn => (first, ...rest) => fn(...rest, first);
|
||||||
```
|
```
|
||||||
|
|
||||||
```js
|
```js
|
||||||
let a = { name: 'John Smith' };
|
let a = { name: 'John Smith' };
|
||||||
let b = {};
|
let b = {};
|
||||||
const mergeFrom = flip(Object.assign);
|
const mergeFrom = flip(Object.assign);
|
||||||
|
|||||||
Reference in New Issue
Block a user