js的replace如何全部替换目标字符串

JavaScript010

js的replace如何全部替换目标字符串,第1张

replace函数一次只能替换一个目标字符串,可以配合while循环替换所有字符串。

1、在script标签中定义一个字符串,字符串内容为“一个中国北方的中国人在做中国结”,然后将内容输出在网页中:

2、使用replace函数,这时第一个“中国”文本被空字符串替换,但是还有两个“中国”文本没有被替换:

3、添加while循环,循环条件用“indexOf”函数来判断是否“中国”两个字还存在,如果存在则继续替换,不存在则结束,这时所有的目标字符串都被替换完成:

方法1:循环替换,因为js里的replace默认只会替换一个

1

2

3

4

var a = 'abcdefhij'

while(a.indexOf('') >= 0)

a = a.replace('',',')

alert(a)

方法2用正则替换:

1

2

3

var a = 'abcdefhij'

a = a.replace(//g,',')

alert(a)

string 的 replace 方法,第一个参数是正则表达式对象。

如果替换所有 , 应该开启正则表达式对象的 g 属性

var b = a.replace(/,/g , ".") // 正则表达式的直接表示/expression/mode , 双斜线间是表达式,后面是 模式

如果不熟悉正则表达式,纯粹的字符串替换,可以使用

var b = a.split(",").join(".") // 实现

如果,想进一步了解正则表达式,可以参考视频:

http://www.iscripts.org/forum.php?mod=viewthread&tid=3