现在位置:主页>网页制作>Javascript教程> 文章内容

javascript String.format

收藏发布更新日期:2008-08-17 点击:

经常在js里拼字符串,实在忍不下去了,在网上搜索了一下js版的String.format。

第一个写得太巧妙了,看了半天没看懂。

为了跟C#语法配合,还是选用第二个版本吧。

看了下没有在jquery里找到这方面的功能,也不知ASP.NET Ajax Library里是怎么实现这个的。

#lt;script type="text/javascript"#gt;

//V1 method
String.prototype.format = function()
{
var args = arguments;
return this.replace(/\{(\d+)\}/g,
function(m,i){
return args[i];
});
}

//V2 static
String.format = function() {
if( arguments.length == 0 )
return null;

var str = arguments[0];
for(var i=1;i#lt;arguments.length;i++) {
var re = new RegExp('\\{' + (i-1) + '\\}','gm');
str = str.replace(re, arguments[i]);
}
return str;
}

var a = "I Love {0}, and You Love {1},Where are {0}! {4}";
alert(String.format(a, "You","Me"));

alert(a.format("You","Me"));
#lt;/script#gt;