JavaScript模仿C#中string.format效果

时间:2015-05-12 22:51:57   收藏:0   阅读:159

function stringformat() {
    var args = Array.prototype.slice.call(arguments);
    if (args.length == 0) { return ‘‘;}     
    if (args.length == 1) { return args[0]; }     
    var str = args.shift();
    return str.replace(
                /\\?\{([^{}]+)\}/g,
                function(match, name) {
                    if (match.charAt(0) === ‘\\‘) {
                        return match.slice(1);
                    }
                    return (args[name] === undefined) ? match : args[name];
                }
            );
}

// 返回 my name is Rain Man and age is 28
stringformat(‘my name is {0} and age is {1}‘, ‘Rain Man‘, 28, ‘an‘);

评论(0
© 2014 mamicode.com 版权所有 京ICP备13008772号-2  联系我们:gaon5@hotmail.com
迷上了代码!