专栏目录35 篇

专栏

编程语言

从 C#、Go、JavaScript 到 Python,整理语言特性、运行机制、并发模型与编码实践,形成循序渐进的学习路径。

共 35 篇文章

查看全部章节
阅读进度 94% 94%
编程语言 /第五章 JavaScript/语法与常用技巧
ARTICLE

JS中的Replace方法

收录于「编程语言」专栏 查看专栏目录
本文目录

最近查一个bug,原因是JS中的Replace方法造成的,当将一个字符串中有处需要替换时,一般会用到JS中的Replace方法,Replace方法的第一个参数如果是传的字符串,只会替换第一处。代码如下:

var str = "0CEA65D5-DB8E-4876-A6F8-C88AC7F0E185,E846C244-8A19-4374-879B-0B1DC08D1747,6CB3EBA4-1E22-4E4D-8800-AE31130B6F5D";
alert(str.replace(",","','"));

上面的代码本意是将用逗号隔开的GUID的逗号替换成’,’,但实际结果只将第一个逗号替换了。

2012-04-16_230940

解决这个问题只需将replace的第一个参数使用正则的方式即可,代码如下:

var reg = new RegExp(",","g");
var str = "0CEA65D5-DB8E-4876-A6F8-C88AC7F0E185,E846C244-8A19-4374-879B-0B1DC08D1747,6CB3EBA4-1E22-4E4D-8800-AE31130B6F5D";
alert(str.replace(reg,"','"));

结果如下:

2012-04-16_231320

评论

评论组件按需加载,不影响文章阅读速度。