您的位置:首页 > Web前端 > JavaScript

JavaScript里String.Format方法的实现

2011-06-26 16:43 591 查看
在Javascript里通过原型扩展和正则表达式实现类似于C#里的String.Format方法.

方法实现:

String.prototype.format = function (args) {

var str = this;

return str.replace(new RegExp("{-?[0-9]+}", "g"), function(item) {

var intVal = parseInt(item.substring(1, item.length - 1));

var replace;

if (intVal >= 0) {

replace = args[intVal];

} else if (intVal === -1) {

replace = "{";

} else if (intVal === -2) {

replace = "}";

} else {

replace = "";

}

return replace;

});

};

使用如下:

var str = "She {1} {0}{2} by the {0}{3}. {-1}^_^{-2}";

str = str.format(["sea", "sells", "shells", "shore"]);

alert(str);//out put: She sells seashells by the seashore. {^_^}

原文地址:String.Format in JavaScript
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: