在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()方法,這樣問題就一下解決了。
掃一掃 加微信咨詢