Travis build: 231

This commit is contained in:
30secondsofcode
2018-08-15 06:34:35 +00:00
parent a0aa4f89e6
commit ae3648167b
3 changed files with 9 additions and 4 deletions

View File

@ -1849,11 +1849,14 @@ last([1, 2, 3]); // 3
### longestItem
Takes any number of iterable objects or objects with a `length` property and returns the longest one.
If multiple objects have the same length, the first one will be returned.
Returns `undefined` if no arguments are provided.
Use `Array.reduce()` to collect the longest element. Returns [] for empty array.
Use `Array.reduce()`, comparing the `length` of objects to find the longest one.
```js
const longestItem = (...vals) => [...vals].reduce((a, x) => (a.length > x.length ? a : x), []);
const longestItem = (val, ...vals) =>
[val, ...vals].reduce((a, x) => (x.length > a.length ? x : a));
```
<details>

View File

@ -268,7 +268,8 @@
<span class="token function">JSONtoCSV</span><span class="token punctuation">([{</span> a<span class="token punctuation">:</span> <span class="token number">1</span><span class="token punctuation">,</span> b<span class="token punctuation">:</span> <span class="token number">2</span> <span class="token punctuation">}, {</span> a<span class="token punctuation">:</span> <span class="token number">3</span><span class="token punctuation">,</span> b<span class="token punctuation">:</span> <span class="token number">4</span><span class="token punctuation">,</span> c<span class="token punctuation">:</span> <span class="token number">5</span> <span class="token punctuation">}, {</span> a<span class="token punctuation">:</span> <span class="token number">6</span> <span class="token punctuation">}, {</span> b<span class="token punctuation">:</span> <span class="token number">7</span> <span class="token punctuation">}], [</span><span class="token string">'a'</span><span class="token punctuation">,</span> <span class="token string">'b'</span><span class="token punctuation">],</span> <span class="token string">';'</span><span class="token punctuation">);</span> <span class="token comment">// 'a;b\n"1";"2"\n"3";"4"\n"6";""\n"";"7"'</span>
</pre><button class="primary clipboard-copy">&#128203;&nbsp;Copy to clipboard</button></div></div><div class="card fluid"><h3 id="last" class="section double-padded">last</h3><div class="section double-padded"><p>Returns the last element in an array.</p><p>Use <code>arr.length - 1</code> to compute the index of the last element of the given array and returning it.</p><pre class="language-js"><span class="token keyword">const</span> <span class="token function-variable function">last</span> <span class="token operator">=</span> arr <span class="token operator">=></span> arr<span class="token punctuation">[</span>arr<span class="token punctuation">.</span>length <span class="token operator">-</span> <span class="token number">1</span><span class="token punctuation">];</span>
</pre><label class="collapse">Show examples</label><pre class="language-js"><span class="token function">last</span><span class="token punctuation">([</span><span class="token number">1</span><span class="token punctuation">,</span> <span class="token number">2</span><span class="token punctuation">,</span> <span class="token number">3</span><span class="token punctuation">]);</span> <span class="token comment">// 3</span>
</pre><button class="primary clipboard-copy">&#128203;&nbsp;Copy to clipboard</button></div></div><div class="card fluid"><h3 id="longestitem" class="section double-padded">longestItem</h3><div class="section double-padded"><p>Takes any number of iterable objects or objects with a <code>length</code> property and returns the longest one.</p><p>Use <code>Array.reduce()</code> to collect the longest element. Returns [] for empty array.</p><pre class="language-js"><span class="token keyword">const</span> <span class="token function-variable function">longestItem</span> <span class="token operator">=</span> <span class="token punctuation">(</span><span class="token operator">...</span>vals<span class="token punctuation">)</span> <span class="token operator">=></span> <span class="token punctuation">[</span><span class="token operator">...</span>vals<span class="token punctuation">].</span><span class="token function">reduce</span><span class="token punctuation">((</span>a<span class="token punctuation">,</span> x<span class="token punctuation">)</span> <span class="token operator">=></span> <span class="token punctuation">(</span>a<span class="token punctuation">.</span>length <span class="token operator">></span> x<span class="token punctuation">.</span>length <span class="token operator">?</span> a <span class="token punctuation">:</span> x<span class="token punctuation">), []);</span>
</pre><button class="primary clipboard-copy">&#128203;&nbsp;Copy to clipboard</button></div></div><div class="card fluid"><h3 id="longestitem" class="section double-padded">longestItem</h3><div class="section double-padded"><p>Takes any number of iterable objects or objects with a <code>length</code> property and returns the longest one. If multiple objects have the same length, the first one will be returned. Returns <code>undefined</code> if no arguments are provided.</p><p>Use <code>Array.reduce()</code>, comparing the <code>length</code> of objects to find the longest one.</p><pre class="language-js"><span class="token keyword">const</span> <span class="token function-variable function">longestItem</span> <span class="token operator">=</span> <span class="token punctuation">(</span>val<span class="token punctuation">,</span> <span class="token operator">...</span>vals<span class="token punctuation">)</span> <span class="token operator">=></span>
<span class="token punctuation">[</span>val<span class="token punctuation">,</span> <span class="token operator">...</span>vals<span class="token punctuation">].</span><span class="token function">reduce</span><span class="token punctuation">((</span>a<span class="token punctuation">,</span> x<span class="token punctuation">)</span> <span class="token operator">=></span> <span class="token punctuation">(</span>x<span class="token punctuation">.</span>length <span class="token operator">></span> a<span class="token punctuation">.</span>length <span class="token operator">?</span> x <span class="token punctuation">:</span> a<span class="token punctuation">));</span>
</pre><label class="collapse">Show examples</label><pre class="language-js"><span class="token function">longestItem</span><span class="token punctuation">(</span><span class="token string">'this'</span><span class="token punctuation">,</span> <span class="token string">'is'</span><span class="token punctuation">,</span> <span class="token string">'a'</span><span class="token punctuation">,</span> <span class="token string">'testcase'</span><span class="token punctuation">);</span> <span class="token comment">// 'testcase'</span>
<span class="token function">longestItem</span><span class="token punctuation">(</span><span class="token operator">...</span><span class="token punctuation">[</span><span class="token string">'a'</span><span class="token punctuation">,</span> <span class="token string">'ab'</span><span class="token punctuation">,</span> <span class="token string">'abc'</span><span class="token punctuation">]);</span> <span class="token comment">// 'abc'</span>
<span class="token function">longestItem</span><span class="token punctuation">(</span><span class="token operator">...</span><span class="token punctuation">[</span><span class="token string">'a'</span><span class="token punctuation">,</span> <span class="token string">'ab'</span><span class="token punctuation">,</span> <span class="token string">'abc'</span><span class="token punctuation">],</span> <span class="token string">'abcd'</span><span class="token punctuation">);</span> <span class="token comment">// 'abcd'</span>

View File

@ -7,7 +7,8 @@ Returns `undefined` if no arguments are provided.
Use `Array.reduce()`, comparing the `length` of objects to find the longest one.
```js
const longestItem = (val, ...vals) => [val, ...vals].reduce((a, x) => x.length > a.length ? x : a);
const longestItem = (val, ...vals) =>
[val, ...vals].reduce((a, x) => (x.length > a.length ? x : a));
```
```js