js中的string.format

来源:互联网 发布:网络综合布线设计图 编辑:程序博客网 时间:2024/06/04 20:51

js中添加string.format

String.prototype.format = function(args) {    var result = this;    if (arguments.length > 0) {            if (arguments.length == 1 && typeof (args) == "object") {            for (var key in args) {                if(args[key]!=undefined){                    var reg = new RegExp("({" + key + "})", "g");                    result = result.replace(reg, args[key]);                }            }        }        else {            for (var i = 0; i < arguments.length; i++) {                if (arguments[i] != undefined) {                    //var reg = new RegExp("({[" + i + "]})", "g");//这个在索引大于9时会有问题,谢谢何以笙箫的指出            var reg= new RegExp("({)" + i + "(})", "g");                    result = result.replace(reg, arguments[i]);                }            }        }    }    return result;}

//两种调用方式
var template1=”我是{0},今年{1}了”;
var template2=”我是{name},今年{age}了”;
var result1=template1.format(“loogn”,22);
var result2=template2.format({name:”loogn”,age:22});
//两个结果都是”我是loogn,今年22了”

原创粉丝点击