Travis build: 1104
This commit is contained in:
@ -2942,7 +2942,7 @@ uniqueElements([1, 2, 2, 3, 4, 4, 5]); // [1, 2, 3, 4, 5]
|
||||
|
||||
Returns all unique values of an array, based on a provided comparator function.
|
||||
|
||||
Use `Array.prototype.reduce()` and `Array.prototype.some()` for an array containing only the first unique occurence of each value, based on the comparator function, `fn`.
|
||||
Use `Array.prototype.reduce()` and `Array.prototype.some()` for an array containing only the first unique occurrence of each value, based on the comparator function, `fn`.
|
||||
The comparator function takes two arguments: the values of the two elements being compared.
|
||||
|
||||
```js
|
||||
@ -2977,7 +2977,7 @@ uniqueElementsBy(
|
||||
|
||||
Returns all unique values of an array, based on a provided comparator function.
|
||||
|
||||
Use `Array.prototype.reduce()` and `Array.prototype.some()` for an array containing only the last unique occurence of each value, based on the comparator function, `fn`.
|
||||
Use `Array.prototype.reduce()` and `Array.prototype.some()` for an array containing only the last unique occurrence of each value, based on the comparator function, `fn`.
|
||||
The comparator function takes two arguments: the values of the two elements being compared.
|
||||
|
||||
```js
|
||||
@ -4729,6 +4729,7 @@ const checkProp = (predicate, prop) => obj => !!predicate(obj[prop]);
|
||||
|
||||
|
||||
|
||||
|
||||
const lengthIs4 = checkProp(l => l === 4, 'length');
|
||||
lengthIs4([]); // false
|
||||
lengthIs4([1,2,3,4]); // true
|
||||
@ -7909,7 +7910,7 @@ capitalizeEveryWord('hello world!'); // 'Hello World!'
|
||||
|
||||
Returns a string with whitespaces compacted.
|
||||
|
||||
Use `String.prototype.replace()` with a regular expression to replace all occurences of 2 or more whitespace characters with a single space.
|
||||
Use `String.prototype.replace()` with a regular expression to replace all occurrences of 2 or more whitespace characters with a single space.
|
||||
|
||||
```js
|
||||
const compactWhitespace = str => str.replace(/\s{2,}/g, ' ');
|
||||
|
||||
@ -149,6 +149,7 @@ console<span class="token punctuation">.</span><span class="token function">log<
|
||||
|
||||
|
||||
|
||||
|
||||
<span class="token keyword">const</span> lengthIs4 <span class="token operator">=</span> <span class="token function">checkProp</span><span class="token punctuation">(</span>l <span class="token operator">=></span> l <span class="token operator">===</span> <span class="token number">4</span><span class="token punctuation">,</span> <span class="token string">'length'</span><span class="token punctuation">);</span>
|
||||
<span class="token function">lengthIs4</span><span class="token punctuation">([]);</span> <span class="token comment">// false</span>
|
||||
<span class="token function">lengthIs4</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 number">4</span><span class="token punctuation">]);</span> <span class="token comment">// true</span>
|
||||
|
||||
File diff suppressed because one or more lines are too long
@ -558,7 +558,7 @@ managers<span class="token punctuation">;</span> <span class="token comment">//
|
||||
</pre><label class="collapse">examples</label><pre class="section card-examples language-js"><span class="token function">unionWith</span><span class="token punctuation">([</span><span class="token number">1</span><span class="token punctuation">,</span> <span class="token number">1.2</span><span class="token punctuation">,</span> <span class="token number">1.5</span><span class="token punctuation">,</span> <span class="token number">3</span><span class="token punctuation">,</span> <span class="token number">0</span><span class="token punctuation">], [</span><span class="token number">1.9</span><span class="token punctuation">,</span> <span class="token number">3</span><span class="token punctuation">,</span> <span class="token number">0</span><span class="token punctuation">,</span> <span class="token number">3.9</span><span class="token punctuation">], (</span>a<span class="token punctuation">,</span> b<span class="token punctuation">)</span> <span class="token operator">=></span> Math<span class="token punctuation">.</span><span class="token function">round</span><span class="token punctuation">(</span>a<span class="token punctuation">)</span> <span class="token operator">===</span> Math<span class="token punctuation">.</span><span class="token function">round</span><span class="token punctuation">(</span>b<span class="token punctuation">));</span> <span class="token comment">// [1, 1.2, 1.5, 3, 0, 3.9]</span>
|
||||
</pre></div><div class="card code-card"><div class="corner beginner"></div><div class="section card-content"><h4 id="uniqueelements">uniqueElements</h4><p>Returns all unique values of an array.</p><p>Use ES6 <code>Set</code> and the <code>...rest</code> operator to discard all duplicated values.</p></div><div class="copy-button-container"><button class="copy-button" aria-label="Copy to clipboard"></button></div><pre class="section card-code language-js"><span class="token keyword">const</span> <span class="token function-variable function">uniqueElements</span> <span class="token operator">=</span> arr <span class="token operator">=></span> <span class="token punctuation">[</span><span class="token operator">...</span><span class="token keyword">new</span> <span class="token class-name">Set</span><span class="token punctuation">(</span>arr<span class="token punctuation">)];</span>
|
||||
</pre><label class="collapse">examples</label><pre class="section card-examples language-js"><span class="token function">uniqueElements</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">2</span><span class="token punctuation">,</span> <span class="token number">3</span><span class="token punctuation">,</span> <span class="token number">4</span><span class="token punctuation">,</span> <span class="token number">4</span><span class="token punctuation">,</span> <span class="token number">5</span><span class="token punctuation">]);</span> <span class="token comment">// [1, 2, 3, 4, 5]</span>
|
||||
</pre></div><div class="card code-card"><div class="corner intermediate"></div><div class="section card-content"><h4 id="uniqueelementsby">uniqueElementsBy</h4><p>Returns all unique values of an array, based on a provided comparator function.</p><p>Use <code>Array.prototype.reduce()</code> and <code>Array.prototype.some()</code> for an array containing only the first unique occurence of each value, based on the comparator function, <code>fn</code>. The comparator function takes two arguments: the values of the two elements being compared.</p></div><div class="copy-button-container"><button class="copy-button" aria-label="Copy to clipboard"></button></div><pre class="section card-code language-js"><span class="token keyword">const</span> <span class="token function-variable function">uniqueElementsBy</span> <span class="token operator">=</span> <span class="token punctuation">(</span>arr<span class="token punctuation">,</span> fn<span class="token punctuation">)</span> <span class="token operator">=></span>
|
||||
</pre></div><div class="card code-card"><div class="corner intermediate"></div><div class="section card-content"><h4 id="uniqueelementsby">uniqueElementsBy</h4><p>Returns all unique values of an array, based on a provided comparator function.</p><p>Use <code>Array.prototype.reduce()</code> and <code>Array.prototype.some()</code> for an array containing only the first unique occurrence of each value, based on the comparator function, <code>fn</code>. The comparator function takes two arguments: the values of the two elements being compared.</p></div><div class="copy-button-container"><button class="copy-button" aria-label="Copy to clipboard"></button></div><pre class="section card-code language-js"><span class="token keyword">const</span> <span class="token function-variable function">uniqueElementsBy</span> <span class="token operator">=</span> <span class="token punctuation">(</span>arr<span class="token punctuation">,</span> fn<span class="token punctuation">)</span> <span class="token operator">=></span>
|
||||
arr<span class="token punctuation">.</span><span class="token function">reduce</span><span class="token punctuation">((</span>acc<span class="token punctuation">,</span> v<span class="token punctuation">)</span> <span class="token operator">=></span> <span class="token punctuation">{</span>
|
||||
<span class="token keyword">if</span> <span class="token punctuation">(</span><span class="token operator">!</span>acc<span class="token punctuation">.</span><span class="token function">some</span><span class="token punctuation">(</span>x <span class="token operator">=></span> <span class="token function">fn</span><span class="token punctuation">(</span>v<span class="token punctuation">,</span> x<span class="token punctuation">)))</span> acc<span class="token punctuation">.</span><span class="token function">push</span><span class="token punctuation">(</span>v<span class="token punctuation">);</span>
|
||||
<span class="token keyword">return</span> acc<span class="token punctuation">;
|
||||
@ -573,7 +573,7 @@ managers<span class="token punctuation">;</span> <span class="token comment">//
|
||||
],
|
||||
(</span>a<span class="token punctuation">,</span> b<span class="token punctuation">)</span> <span class="token operator">=></span> a<span class="token punctuation">.</span>id <span class="token operator">==</span> b<span class="token punctuation">.</span>id
|
||||
<span class="token punctuation">);</span> <span class="token comment">// [ { id: 0, value: 'a' }, { id: 1, value: 'b' }, { id: 2, value: 'c' } ]</span>
|
||||
</pre></div><div class="card code-card"><div class="corner intermediate"></div><div class="section card-content"><h4 id="uniqueelementsbyright">uniqueElementsByRight</h4><p>Returns all unique values of an array, based on a provided comparator function.</p><p>Use <code>Array.prototype.reduce()</code> and <code>Array.prototype.some()</code> for an array containing only the last unique occurence of each value, based on the comparator function, <code>fn</code>. The comparator function takes two arguments: the values of the two elements being compared.</p></div><div class="copy-button-container"><button class="copy-button" aria-label="Copy to clipboard"></button></div><pre class="section card-code language-js"><span class="token keyword">const</span> <span class="token function-variable function">uniqueElementsByRight</span> <span class="token operator">=</span> <span class="token punctuation">(</span>arr<span class="token punctuation">,</span> fn<span class="token punctuation">)</span> <span class="token operator">=></span>
|
||||
</pre></div><div class="card code-card"><div class="corner intermediate"></div><div class="section card-content"><h4 id="uniqueelementsbyright">uniqueElementsByRight</h4><p>Returns all unique values of an array, based on a provided comparator function.</p><p>Use <code>Array.prototype.reduce()</code> and <code>Array.prototype.some()</code> for an array containing only the last unique occurrence of each value, based on the comparator function, <code>fn</code>. The comparator function takes two arguments: the values of the two elements being compared.</p></div><div class="copy-button-container"><button class="copy-button" aria-label="Copy to clipboard"></button></div><pre class="section card-code language-js"><span class="token keyword">const</span> <span class="token function-variable function">uniqueElementsByRight</span> <span class="token operator">=</span> <span class="token punctuation">(</span>arr<span class="token punctuation">,</span> fn<span class="token punctuation">)</span> <span class="token operator">=></span>
|
||||
arr<span class="token punctuation">.</span><span class="token function">reduceRight</span><span class="token punctuation">((</span>acc<span class="token punctuation">,</span> v<span class="token punctuation">)</span> <span class="token operator">=></span> <span class="token punctuation">{</span>
|
||||
<span class="token keyword">if</span> <span class="token punctuation">(</span><span class="token operator">!</span>acc<span class="token punctuation">.</span><span class="token function">some</span><span class="token punctuation">(</span>x <span class="token operator">=></span> <span class="token function">fn</span><span class="token punctuation">(</span>v<span class="token punctuation">,</span> x<span class="token punctuation">)))</span> acc<span class="token punctuation">.</span><span class="token function">push</span><span class="token punctuation">(</span>v<span class="token punctuation">);</span>
|
||||
<span class="token keyword">return</span> acc<span class="token punctuation">;
|
||||
|
||||
@ -102,7 +102,7 @@
|
||||
<span class="token function">capitalize</span><span class="token punctuation">(</span><span class="token string">'fooBar'</span><span class="token punctuation">,</span> <span class="token boolean">true</span><span class="token punctuation">);</span> <span class="token comment">// 'Foobar'</span>
|
||||
</pre></div><div class="card code-card"><div class="corner intermediate"></div><div class="section card-content"><h4 id="capitalizeeveryword">capitalizeEveryWord</h4><p>Capitalizes the first letter of every word in a string.</p><p>Use <code>String.prototype.replace()</code> to match the first character of each word and <code>String.prototype.toUpperCase()</code> to capitalize it.</p></div><div class="copy-button-container"><button class="copy-button" aria-label="Copy to clipboard"></button></div><pre class="section card-code language-js"><span class="token keyword">const</span> <span class="token function-variable function">capitalizeEveryWord</span> <span class="token operator">=</span> str <span class="token operator">=></span> str<span class="token punctuation">.</span><span class="token function">replace</span><span class="token punctuation">(</span><span class="token regex">/\b[a-z]/g</span><span class="token punctuation">,</span> char <span class="token operator">=></span> char<span class="token punctuation">.</span><span class="token function">toUpperCase</span><span class="token punctuation">());</span>
|
||||
</pre><label class="collapse">examples</label><pre class="section card-examples language-js"><span class="token function">capitalizeEveryWord</span><span class="token punctuation">(</span><span class="token string">'hello world!'</span><span class="token punctuation">);</span> <span class="token comment">// 'Hello World!'</span>
|
||||
</pre></div><div class="card code-card"><div class="corner beginner"></div><div class="section card-content"><h4 id="compactwhitespace">compactWhitespace</h4><p>Returns a string with whitespaces compacted.</p><p>Use <code>String.prototype.replace()</code> with a regular expression to replace all occurences of 2 or more whitespace characters with a single space.</p></div><div class="copy-button-container"><button class="copy-button" aria-label="Copy to clipboard"></button></div><pre class="section card-code language-js"><span class="token keyword">const</span> <span class="token function-variable function">compactWhitespace</span> <span class="token operator">=</span> str <span class="token operator">=></span> str<span class="token punctuation">.</span><span class="token function">replace</span><span class="token punctuation">(</span><span class="token regex">/\s{2,}/g</span><span class="token punctuation">,</span> <span class="token string">' '</span><span class="token punctuation">);</span>
|
||||
</pre></div><div class="card code-card"><div class="corner beginner"></div><div class="section card-content"><h4 id="compactwhitespace">compactWhitespace</h4><p>Returns a string with whitespaces compacted.</p><p>Use <code>String.prototype.replace()</code> with a regular expression to replace all occurrences of 2 or more whitespace characters with a single space.</p></div><div class="copy-button-container"><button class="copy-button" aria-label="Copy to clipboard"></button></div><pre class="section card-code language-js"><span class="token keyword">const</span> <span class="token function-variable function">compactWhitespace</span> <span class="token operator">=</span> str <span class="token operator">=></span> str<span class="token punctuation">.</span><span class="token function">replace</span><span class="token punctuation">(</span><span class="token regex">/\s{2,}/g</span><span class="token punctuation">,</span> <span class="token string">' '</span><span class="token punctuation">);</span>
|
||||
</pre><label class="collapse">examples</label><pre class="section card-examples language-js"><span class="token function">compactWhitespace</span><span class="token punctuation">(</span><span class="token string">'Lorem Ipsum'</span><span class="token punctuation">);</span> <span class="token comment">// 'Lorem Ipsum'</span>
|
||||
<span class="token function">compactWhitespace</span><span class="token punctuation">(</span><span class="token string">'Lorem \n Ipsum'</span><span class="token punctuation">);</span> <span class="token comment">// 'Lorem Ipsum'</span>
|
||||
</pre></div><div class="card code-card"><div class="corner intermediate"></div><div class="section card-content"><h4 id="csvtoarray">CSVToArray</h4><p>Converts a comma-separated values (CSV) string to a 2D array.</p><p>Use <code>Array.prototype.slice()</code> and <code>Array.prototype.indexOf('\n')</code> to remove the first row (title row) if <code>omitFirstRow</code> is <code>true</code>. Use <code>String.prototype.split('\n')</code> to create a string for each row, then <code>String.prototype.split(delimiter)</code> to separate the values in each row. Omit the second argument, <code>delimiter</code>, to use a default delimiter of <code>,</code>. Omit the third argument, <code>omitFirstRow</code>, to include the first row (title row) of the CSV string.</p></div><div class="copy-button-container"><button class="copy-button" aria-label="Copy to clipboard"></button></div><pre class="section card-code language-js"><span class="token keyword">const</span> CSVToArray <span class="token operator">=</span> <span class="token punctuation">(</span>data<span class="token punctuation">,</span> delimiter <span class="token operator">=</span> <span class="token string">','</span><span class="token punctuation">,</span> omitFirstRow <span class="token operator">=</span> <span class="token boolean">false</span><span class="token punctuation">)</span> <span class="token operator">=></span>
|
||||
|
||||
@ -14,6 +14,7 @@ const checkProp = (predicate, prop) => obj => !!predicate(obj[prop]);
|
||||
|
||||
|
||||
|
||||
|
||||
const lengthIs4 = checkProp(l => l === 4, 'length');
|
||||
lengthIs4([]); // false
|
||||
lengthIs4([1,2,3,4]); // true
|
||||
|
||||
Reference in New Issue
Block a user