js中的string.format函数代码,学习js的朋友可以参考下。
源于C#中的string.Format() 
复制代码 代码如下:
 
String.prototype.format = function(args) { 
if (arguments.length>0) { 
var result = this; 
if (arguments.length == 1 && typeof (args) == "object") { 
for (var key in args) { 
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) 
{ 
return ""; 
} 
else 
{ 
var reg=new RegExp ("({["+i+"]})","g"); 
result = result.replace(reg, arguments[i]); 
} 
} 
} 
return result; 
} 
else { 
return this; 
} 
} 
例:
复制代码 代码如下:
 
//两种调用方式 
var template1="我是{0},今年{1}了"; 
var template2="我是{name},今年{age}了"; 
var result1=template1.format("loogn",22); 
var result2=template1.format({name:"loogn",age:22}); 
//两个结果都是"我是loogn,今年22了" 
您可能感兴趣的文章:
