Travis build: 531
This commit is contained in:
@ -7584,14 +7584,12 @@ mapString('lorem ipsum', c => c.toUpperCase()); // 'LOREM IPSUM'
|
||||
|
||||
Replaces all but the last `num` of characters with the specified mask character.
|
||||
|
||||
Use `String.slice()` to grab the portion of the characters that need to be masked and use `String.replace()` with a regexp to replace every character with the mask character.
|
||||
Concatenate the masked characters with the remaining unmasked portion of the string.
|
||||
Use `String.slice()` to grab the portion of the characters that will remain unmasked and use `String.padStart()` to fill the beginning of the string with the mask character up to the original length.
|
||||
Omit the second argument, `num`, to keep a default of `4` characters unmasked. If `num` is negative, the unmasked characters will be at the start of the string.
|
||||
Omit the third argument, `mask`, to use a default character of `'*'` for the mask.
|
||||
|
||||
```js
|
||||
const mask = (cc, num = 4, mask = '*') =>
|
||||
('' + cc).slice(0, -num).replace(/./g, mask) + ('' + cc).slice(-num);
|
||||
const mask = (cc, num = 4, mask = '*') => `${cc}`.slice(-num).padStart(`${cc}`.length, mask);
|
||||
```
|
||||
|
||||
<details>
|
||||
|
||||
@ -158,8 +158,7 @@
|
||||
.</span><span class="token function">map</span><span class="token punctuation">((</span>c<span class="token punctuation">,</span> i<span class="token punctuation">)</span> <span class="token operator">=></span> <span class="token function">fn</span><span class="token punctuation">(</span>c<span class="token punctuation">,</span> i<span class="token punctuation">,</span> str<span class="token punctuation">))
|
||||
.</span><span class="token function">join</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">mapString</span><span class="token punctuation">(</span><span class="token string">'lorem ipsum'</span><span class="token punctuation">,</span> c <span class="token operator">=></span> c<span class="token punctuation">.</span><span class="token function">toUpperCase</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="mask">mask</h4><p>Replaces all but the last <code>num</code> of characters with the specified mask character.</p><p>Use <code>String.slice()</code> to grab the portion of the characters that need to be masked and use <code>String.replace()</code> with a regexp to replace every character with the mask character. Concatenate the masked characters with the remaining unmasked portion of the string. Omit the second argument, <code>num</code>, to keep a default of <code>4</code> characters unmasked. If <code>num</code> is negative, the unmasked characters will be at the start of the string. Omit the third argument, <code>mask</code>, to use a default character of <code>'*'</code> for the mask.</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> mask <span class="token operator">=</span> <span class="token punctuation">(</span>cc<span class="token punctuation">,</span> num <span class="token operator">=</span> <span class="token number">4</span><span class="token punctuation">,</span> mask <span class="token operator">=</span> <span class="token string">'*'</span><span class="token punctuation">)</span> <span class="token operator">=></span>
|
||||
<span class="token punctuation">(</span><span class="token string">''</span> <span class="token operator">+</span> cc<span class="token punctuation">).</span><span class="token function">slice</span><span class="token punctuation">(</span><span class="token number">0</span><span class="token punctuation">,</span> <span class="token operator">-</span>num<span class="token punctuation">).</span><span class="token function">replace</span><span class="token punctuation">(</span><span class="token regex">/./g</span><span class="token punctuation">,</span> mask<span class="token punctuation">)</span> <span class="token operator">+</span> <span class="token punctuation">(</span><span class="token string">''</span> <span class="token operator">+</span> cc<span class="token punctuation">).</span><span class="token function">slice</span><span class="token punctuation">(</span><span class="token operator">-</span>num<span class="token punctuation">);</span>
|
||||
</pre></div><div class="card code-card"><div class="corner intermediate"></div><div class="section card-content"><h4 id="mask">mask</h4><p>Replaces all but the last <code>num</code> of characters with the specified mask character.</p><p>Use <code>String.slice()</code> to grab the portion of the characters that will remain unmasked and use <code>String.padStart()</code> to fill the beginning of the string with the mask character up to the original length. Omit the second argument, <code>num</code>, to keep a default of <code>4</code> characters unmasked. If <code>num</code> is negative, the unmasked characters will be at the start of the string. Omit the third argument, <code>mask</code>, to use a default character of <code>'*'</code> for the mask.</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> mask <span class="token operator">=</span> <span class="token punctuation">(</span>cc<span class="token punctuation">,</span> num <span class="token operator">=</span> <span class="token number">4</span><span class="token punctuation">,</span> mask <span class="token operator">=</span> <span class="token string">'*'</span><span class="token punctuation">)</span> <span class="token operator">=></span> <span class="token template-string"><span class="token string">`</span><span class="token interpolation"><span class="token interpolation-punctuation punctuation">${</span>cc<span class="token interpolation-punctuation punctuation">}</span></span><span class="token string">`</span></span><span class="token punctuation">.</span><span class="token function">slice</span><span class="token punctuation">(</span><span class="token operator">-</span>num<span class="token punctuation">).</span><span class="token function">padStart</span><span class="token punctuation">(</span><span class="token template-string"><span class="token string">`</span><span class="token interpolation"><span class="token interpolation-punctuation punctuation">${</span>cc<span class="token interpolation-punctuation punctuation">}</span></span><span class="token string">`</span></span><span class="token punctuation">.</span>length<span class="token punctuation">,</span> mask<span class="token punctuation">);</span>
|
||||
</pre><label class="collapse">examples</label><pre class="section card-examples language-js"><span class="token function">mask</span><span class="token punctuation">(</span><span class="token number">1234567890</span><span class="token punctuation">);</span> <span class="token comment">// '******7890'</span>
|
||||
<span class="token function">mask</span><span class="token punctuation">(</span><span class="token number">1234567890</span><span class="token punctuation">,</span> <span class="token number">3</span><span class="token punctuation">);</span> <span class="token comment">// '*******890'</span>
|
||||
<span class="token function">mask</span><span class="token punctuation">(</span><span class="token number">1234567890</span><span class="token punctuation">,</span> <span class="token operator">-</span><span class="token number">4</span><span class="token punctuation">,</span> <span class="token string">'$'</span><span class="token punctuation">);</span> <span class="token comment">// '$$$$567890'</span>
|
||||
|
||||
Reference in New Issue
Block a user