replaceAll 实现字符串替换全部方法
发表日期:2021-07-01 15:08:40 | 来源: | | 浏览(846) 分类:页面相关
//最新的谷歌等浏览器内核内置了replaceAll 方法,如果没有的话使用自己实现的 if (typeof String.prototype.replaceAll !== "function"){ String.prototype.replaceAll = function (reg, str) { var flags = 'g'; if (Object.prototype.toString.call(reg).toLowerCase() === '[object regexp]') { // 传入的是正则 if (reg.global) { return this.replace(reg, str); } else { flags += (reg.ignoreCase ? 'i' : '') + (reg.multiline ? 'm' : ''); reg = reg.source;// 获取正则源码 } } else { reg = reg.replace(/([\*\[\]\{\}\-])/g, "\\$1"); } return this.replace(new RegExp(reg, flags), str); } }