Quantcast
Viewing latest article 3
Browse Latest Browse All 10

Is there JavaScript function that can pad string to get to determined length

Problem And Question

I am in need of a JavaScript function which can take a value and pad it to a given length (I need spaces, but anything would do). I found this: http://jsfromhell.com/string/pad

But I have no idea what the heck it is doing and it doesn’t seem to work for me.

Best Solution And Answer

http://www.webtoolkit.info/javascript-pad.html

/**
*
*  Javascript string pad
*  http://www.webtoolkit.info/
*
**/

var STR_PAD_LEFT = 1;
var STR_PAD_RIGHT = 2;
var STR_PAD_BOTH = 3;

function pad(str, len, pad, dir) {

    if (typeof(len) == "undefined") { var len = 0; }
    if (typeof(pad) == "undefined") { var pad = ' '; }
    if (typeof(dir) == "undefined") { var dir = STR_PAD_RIGHT; }

    if (len + 1 >= str.length) {

        switch (dir){

            case STR_PAD_LEFT:
                str = Array(len + 1 - str.length).join(pad) + str;
            break;

            case STR_PAD_BOTH:
                var right = Math.ceil((padlen = len - str.length) / 2);
                var left = padlen - right;
                str = Array(left+1).join(pad) + str + Array(right+1).join(pad);
            break;

            default:
                str = str + Array(len + 1 - str.length).join(pad);
            break;

        } // switch

    }

    return str;

}

It’s a lot more readable.


Viewing latest article 3
Browse Latest Browse All 10

Trending Articles