`
jxb8901
  • 浏览: 165151 次
  • 性别: Icon_minigender_1
  • 来自: shenzhen
社区版块
存档分类
最新评论

javascript中鲜为人知String.replace方法

阅读更多
近日看Ext-1.0.1源代码,在Ext.js的第552行有如下代码:
    format : function(format){
        var args = Array.prototype.slice.call(arguments, 1);
        return format.replace(/\{(\d+)\}/g, function(m, i){
            return args[i];
        });
    }

该方法实现如下功能:
String.format("name is {0} and age is {1}", "John", 12) => name is John and age is 12


上述代码中的replace方法的调用很意思,它接收的第二个参数是一个function,而我们通常调用replace方法时第二个参数传递的一般是String。

直接上google查找javascript reference,但很少有提到这种用法的。后来在mozilla的参考文档中终于找到了这种用法,这里有详细的API及javascript版本兼容性说明。
分享到:
评论
1 楼 makemyownlife 2008-09-03  
楼主能否仔细的讲讲,我非常想知道。。正在郁闷中

相关推荐

Global site tag (gtag.js) - Google Analytics