javascript模拟实现replaceAll()
本章节分享一段代码实例,它模拟实现了replaceAll()方法功能。
代码实例:
String.prototype.replaceAll = function(reallyDo, replaceWith, ignoreCase) {
if (!RegExp.prototype.isPrototypeOf(reallyDo)) {
return this.replace(new RegExp(reallyDo, (ignoreCase ? "gi": "g")), replaceWith);
}
else {
return this.replace(reallyDo, replaceWith);
}
}
var str="实例3";
console.log(str.replaceAll('o','a',true));
上面的代码实现了我们的替换效果,下面介绍一下它的实现过程。
一.代码注释:
(1).String.prototype.replaceAll = function(reallyDo, replaceWith, ignoreCase) { },为String的圆形对象添加replaceAll()方法,第一个参数可以是正则表达式(用来匹配字符串中要被替换的内容),也可以是字符串中要被替换的内容,第二个参数规定使用什么内容进行替换,第三个参数规定是否忽略大小写。
(2).if (!RegExp.prototype.isPrototypeOf(reallyDo)),判断reallyDo是否是一个正则表达式对象。
(3).return this.replace(new RegExp(reallyDo, (ignoreCase ? "gi": "g")), replaceWith),利用正则表达式进行替换操作。
(4).else { return this.replace(reallyDo, replaceWith);
},进行基本的替换操作。
(1).prototype可以参阅javascript prototype一章节。
(2).isPrototypeOf()方法可以参阅isPrototypeOf()一章节。
(3).replace()方法可以参阅正则表达式replace()一章节。
(4).RegExp()构造方法可以参阅正则表达式的创建一章节。
相关推荐
-
js map集合简单代码实例
本章节分享一段代码实例,它模拟红丝线了m集合的功能。代码实例如下:vr M = function (){ /************基础变量**************/ vr hs
-
javascript计算字符串长度代码实例
下面分享一段代码实例,它实现了计算字符串长度的效果。并且能够区分中英文,代码实例如下:function DLngth(fD){ vr intLngth=0 for (vr i=
-
微信隐藏网页右上角按钮js代码实例
直接看代码,因为非常的简单,没啥好说的:WixinJsBridg.cll(hidOtionMnu);Wixini的地址是github/zxli/Wixini。
-
微信分享网页链接至朋友、朋友圈、微博代码
下面是一段简单的分享链接功能的代码,需要的朋友可以做一下参考。代码如下:vr linLink = ../.., imgUrl = ../.., shrTitl = 页面标题, dsc
-
js微信窗口关闭事件简单代码实例
下面就是一个简单的演示代码片段:WixinJSBridg.invok(closWindow,{},function(rs){ //lrt(rs.rr_msg); });Wixin