var str = "pig cat fish、dog horse monkey bear、lion、fox";我在这里定义了一个字符串,如果使用for循环遍历字符串内部使用replace函数的话
for (j = 0; j <= str.length; j++) { if (str.charAt(j) == "o") { str.replace("o", "*"); } }像上边这样,因为replace是有返回值的,并且只会替换第一个数组, 因此后面的"o"都是没有改变的,存进数组也一样
// 3、把字符串中所有的字符o提换成字符* var b = []; for (j = 0; j <= str.length; j++) { if (str.charAt(j) == "o") { b[j] = str.replace("o", "*"); } } alert(b[b.length - 1]);
由图可以显示出 返回的值依旧是只是第一个改变了 如果想要全部改变 就需要用到正则表达式里面的全局变量了

这是我以前做的笔记 可以看出 如果用 “/正则表达式/g” 这种方式就可以让全部的"o"变为"*"
for (j = 0; j <= str.length; j++) { if (str.charAt(j) == "o") { var str1 = str.replace(/o/g, "*"); } } alert(str1);前后两个“/ 表示是正则表达式
/o/g 则表示 所有的o 从而可以利用replace+正则表达式来改变某个特定字符的全部个体

结果如图所示,希望对您有所帮助
1707



被折叠的 条评论
为什么被折叠?



