proposal: String.prototype.padCenter

Ricardo Zorzal ricardozorzal at hotmail.com
Tue Aug 21 23:40:00 UTC 2018


Hello guys, I here to talk about padStart, padEnd and my new proposal "padCenter", I think it is not hard to develop because we already had padStart and padEnd.

I thought that we need to add one more feature to String's prototype, and it is not a hard work. So the proposal is to create the String.prototype.padCenter that centralize a string with a max character lenght, equals we do when call the "pad" functions.

For exemple, when we call padStart

```javascript
"MY-TEST".padStart(32)
//result: "                         MY-TEST"
```

and when we call padEnd:

```javascript
"MY-TEST".padEnd(32)
//result: "MY-TEST                         "
```

how about that:

```javascript
"MY-TEST".padCenter(32)
//result: "            MY-TEST            "
```

I'm searching it for a long time and I seen people talking about it in different use cases. But for me it will be usefull when I need to send some text data to my bluetooth printer, becouse the length of his line is 32 and I need to centralize the data and adjust the line to right and left.

I think this feature can improve the language and it will be useful for other developers like me.

Although we has libs that has an implementation of it
https://lodash.com/docs#pad
http://gabceb.github.io/underscore.string.site/#pad
https://vocajs.com/#pad
I think it can be done for native functions too

And it is native for other languages, such as:
    1. PHP (https://www.w3schools.com/php/showphp.asp?filename=demo_func_string_str_pad3)
    2. Python (https://docs.python.org/2/library/string.html#string.center)
    3. Ruby (https://ruby-doc.org/core-2.2.0/String.html#center-method)
    4. R (https://www.rdocumentation.org/packages/stringr/versions/1.3.1/topics/str_pad)
    5. etc...


What do you guys think ?

( We can call it "pad" instead of "padCenter"  haha )


Att,

Ricardo Zorzal Davila
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.mozilla.org/pipermail/es-discuss/attachments/20180821/4ee3c563/attachment.html>


More information about the es-discuss mailing list