扩展ie中不兼容的startsWith,endsWith方法
程序员文章站
2022-07-16 14:16:16
...
最近发现之前项目的代码在ie11下没法正常运行,报的错是
对象不支持“startsWith”属性或方法
之后我顺便也试了下endsWith,发现也不行
之前看javascript权威指南时,里面说过可以通过扩展原型方法来添加一些操作
网上找了个链接https://www.jb51.net/article/45419.htm参考下。
我的总体思路是:1.如果浏览器支持startsWith方法,就用原有的;如果不支持,就用自己扩展的(可以通过短路操作||来实现)
2.找的链接里是纯手工实现,我采用正则来进行首尾匹配,代码相对简洁些
修改后的代码如下:
String.prototype.startsWith = String.prototype.startsWith || function (str) {
var reg = new RegExp("^" + str);
return reg.test(this);
}
String.prototype.endsWith = String.prototype.endsWith || function (str) {
var reg = new RegExp(str + "$");
return reg.test(this);
}
把上面的代码放到一个公共js文件里(比如:common.js),然后让这个js在你会用到的startsWith和endsWith的地方之前加载就可以了
上一篇: java中利用URLConnection发送POST或GET请求
下一篇: 第三周学习周记
推荐阅读
-
Vue中android4.4不兼容问题的解决方法
-
IE8下CSS3选择器nth-child() 不兼容问题的解决方法
-
在python3中pyqt5和mayavi不兼容问题的解决方法
-
Vue中android4.4不兼容问题的解决方法
-
JS中使用new Date(str)创建时间对象不兼容firefox和ie的解决方法(两种)
-
IE11浏览器网页不兼容的四种解决方法
-
IE8下CSS3选择器nth-child() 不兼容问题的解决方法
-
在python3中pyqt5和mayavi不兼容问题的解决方法
-
扩展ie中不兼容的startsWith,endsWith方法
-
Java的String类中的startsWith方法和endsWith方法