EXTJS中的Ext.String.format增强

Sha*_*ngh 5 extjs4

我是ExtJS的新手.我遇到了以下代码:

Ext.String.format('<a href="mailto:{0}">{1}</a>',value+"@abc.com",value);
Run Code Online (Sandbox Code Playgroud)

现在这将创建一个mailto链接.但我的问题是Ext.String.format如何工作以及我还能用它做什么?

CD.*_*D.. 2

Ext.String.format:

允许您定义标记化字符串并传递任意数量的参数来替换标记。每个令牌必须是唯一的,并且必须以 {0}、{1} 等格式递增。

你可以查看该函数的源代码,发现它使用了formatRe正则表达式 ( /\{(\d+)\}/g):

format: function(format) {
        var args = Ext.Array.toArray(arguments, 1);
        return format.replace(formatRe, function(m, i) {
            return args[i];
        });
    }
Run Code Online (Sandbox Code Playgroud)