Merge pull request #613 from commenthol/pad
[FEATURE] pad - string padding
This commit is contained in:
17
snippets/pad.md
Normal file
17
snippets/pad.md
Normal file
@ -0,0 +1,17 @@
|
||||
### pad
|
||||
|
||||
Pads a string on both sides with the specified character, if it's shorter than the specified length.
|
||||
|
||||
Use `String.padStart()` and `String.padEnd()` to pad both sides of the given string.
|
||||
Omit the third argument, `char`, to use the whitespace character as the default padding character.
|
||||
|
||||
```js
|
||||
const pad = (str, length, char = ' ') =>
|
||||
str.padStart((str.length + length) / 2, char).padEnd(length, char);
|
||||
```
|
||||
|
||||
```js
|
||||
pad('cat', 8); // ' cat '
|
||||
pad(String(42), 6, '0'); // '004200'
|
||||
pad('foobar', 3); // 'foobar'
|
||||
```
|
||||
@ -178,6 +178,7 @@ onUserInputChange:browser,event,advanced
|
||||
orderBy:object,array
|
||||
over:adapter,function
|
||||
overArgs:adapter,function
|
||||
pad:string
|
||||
palindrome:string
|
||||
parseCookie:utility,string
|
||||
partial:function
|
||||
|
||||
3
test/pad/pad.js
Normal file
3
test/pad/pad.js
Normal file
@ -0,0 +1,3 @@
|
||||
const pad = (string, length = 8, char = ' ') =>
|
||||
string.padStart((string.length + length) / 2, char).padEnd(length, char);
|
||||
module.exports = pad;
|
||||
13
test/pad/pad.test.js
Normal file
13
test/pad/pad.test.js
Normal file
@ -0,0 +1,13 @@
|
||||
const test = require('tape');
|
||||
const pad = require('./pad.js');
|
||||
|
||||
test('Testing pad', (t) => {
|
||||
//For more information on all the methods supported by tape
|
||||
//Please go to https://github.com/substack/tape
|
||||
t.true(typeof pad === 'function', 'pad is a Function');
|
||||
t.equal(pad('cat'), ' cat ', 'cat is padded on both sides');
|
||||
t.equal(pad('cat').length, 8, 'length of string is 8');
|
||||
t.equal(pad(String(42), 6, '0'), '004200', 'pads 42 with "0"');
|
||||
t.equal(pad('foobar', 3), 'foobar', 'does not truncates if string exceeds length');
|
||||
t.end();
|
||||
});
|
||||
Reference in New Issue
Block a user