javascript String.format

王朝html/css/js·作者佚名  2008-08-15
宽屏版  字体: |||超大  

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

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

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

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

<script type="text/javascript">

//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<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"));

</script>

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有