我实际应用中我们想把 "{0}是广东人,{1}是四川人"的占用符替换成我们想要的 张三,李四时。js的String好像不提供这个函数
以下我扩展的方法
extend String
String.prototype.format=function(){
var arr=arguments;
var reg=//{/d+/}/g;
var regO=/[/{/}]+/g;
var s=this.toString();
try{
var count=0;
while((arr = reg.exec(s)) != null){
var parMach=arr.valueOf().toString().replace(regO,"");
s=s.replace(arr.valueOf().toString(),arguments[parMach]);
count++;
}
}catch(e){}
return s;
}
用法:
var str="{0}是广东人,{1}是四川人";
alert(str.format("张三","李四"));