JavaScript里String.Format方法的实现

在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

转载于:https://www.cnblogs.com/doll-net/archive/2011/06/26/String_Format_function_in_javascript.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值