在javascript中,当使用for循环处理如富文本的一些数据时,发现有时不能使用replace()方法,提示 ”replace is not a function“ , 也就是replace()方法在for循环下失去了作用。
这里我们再在看一下官方对replace方法的定义:
语法:”string.replace(searchvalue,newvalue);” 第1个参数:“searchvalue 必传 规定字符串或正则表达式匹配的子串“
也就是replace方法中第1个参数必须传递字符串或者是正则子串,然后再输出一下for循环中元素的数据类型 console.log(typeof element[i]) 如果输出的object, 那说明问题出在给replace传递参数的数据类型不对,是不是我们可以把for循环中element[i]转成字符串再传递,理论是可以的,但是为了避免更多的坑,建议直接使用jQuery中的each循环来替代for循环,然后再使用replace()方法,这样问题就一下解决了。
扫一扫 加微信咨询