padLeft, padRight

by Ivan Gerasimenko

JavaScript

function GetPadString(str, len, char) {
    var padChar;
    if(typeof char === 'undefined')
        substitutionChar = ' ';
    else
        substitutionChar = char;
    
    var lengthOfPad = len + 1 - str.length;
    lengthOfPad = lengthOfPad > 0 ? lengthOfPad : 0;
    
    return Array(lengthOfPad).join(substitutionChar);
}

function padRight(str, len, char) {
    return GetPadString(str, len, char) + str;
}

function padLeft(str, len, char) {
    return str + GetPadString(str, len, char);
}

var log = function(msg) { console.log(msg) };

console.clear();
log(padLeft("asdf", 10));
log(padLeft("asdf", 10, '_'));
log(padLeft("asdfsdf", 10, '_'));
log(padLeft("asdfsdfasdasd", 10, '_'));
log();
log(padRight("asdf", 10));
log(padRight("asdf", 10, '_'));
log(padRight("asdfsdf", 10, '_'));
log(padRight("asdfsdfasdasd", 10, '_'));