Блог

Javascript: форматирование строки

Может кому пригодится. Форматирование строки по шаблону.

String.prototype.format = String.prototype.f = function() {
    var s = this, i = arguments.length;
    if(arguments[0] instanceof Object) {
        $.each(arguments[0], function(i, val){
            s = s.replace(new RegExp('\\{\{' + i + '\\}\}', 'gm'), val);
        });
    }
    else {
        while (i--) {
            s = s.replace(new RegExp('\\{' + i + '\\}', 'gm'), arguments[i]);
        }
    }
    return s;
};


"{0}, this is test".format('Hello');
"{{hello}}, this is test".format({'hello':'Hello'});