[JS] 取代字串中所有指定值

今天试写一个简单的javascript字串反转时,
发现单纯使用replace的话,只会取代字串中的第一个值,
程式码如下:

var str = "ABCD";var result = [];for (var i = str.length - 1; i >= 0; i--){  result.push(str[i]);}console.log(result.toString().replace(",",""));

执行结果:
"DC,B,A"

处理这个问题有两种做法,第一种是针对需要取代的字元使用正规表达式:
使用斜线包住需要取代的字串,并在最后加上g代表指定全域:/,/g
用这样的表达式去指定程式调整字串中所有需要取代的部分。

var str = "ABCD";var result = [];for (var i = str.length - 1; i >= 0; i--){  result.push(str[i]);}console.log(result.toString().replace(/,/g,""));

第二种是改为使用replaceAll,这样就可以很直观的把所有指定字元都取代掉了。

var str = "ABCD";var result = [];for (var i = str.length - 1; i >= 0; i--){  result.push(str[i]);}console.log(result.toString().replaceAll(",",""));

关于作者: 网站小编

码农网专注IT技术教程资源分享平台,学习资源下载网站,58码农网包含计算机技术、网站程序源码下载、编程技术论坛、互联网资源下载等产品服务,提供原创、优质、完整内容的专业码农交流分享平台。

热门文章