string.replace(/\./g,'_')
是我想要的行为,但我宁愿不使用实际的正则表达式,因为这个 jsperf表明使用字符串 egstring.replace('.','_')
更快。
不幸的是(这对于 jsperf 来说可能是一种诅咒,因为这在任何方面都不是很明显)看起来替换只会在第一场比赛中起作用,所以它只与
string.replace(/\./,'_')
这可能足以使比较无效,因为它实际上只比普通字符串快两倍(在 Webkit 上)replace
,但实际上只用空格替换一个句点而不是全部替换它实际上只完成了 1/4 的工作。
有一个明显的方法是
while(string.indexOf('.') !== -1) string = string.replace('.','_');
但是否有更好或更快的方法来实现这一目标?