浅谈js中startsWith 函数不能在任何浏览器兼容的问题
在做js测试的时候用到了startsWith函数,但是他并不是每个浏览器都有的,所以我们一般要重写一下这个函数,具体的用法可以稍微总结一下
在有些浏览器中他是undefined所以我们可以这样的处理一下、
if(typeofString.prototype.startsWith!='function'){
String.prototype.startsWith=function(prefix){
returnthis.slice(0,prefix.length)===prefix;
};
}
这个需要放在页面刚要加载完成的函数里,不然不好使。
还有一种直接重写不过我没测试过,你们可以测试一下:
String.prototype.startWith=function(str){
if(str==null||str==""||this.length==0||str.length>this.length)
returnfalse;
if(this.substr(0,str.length)==str)
returntrue;
else
returnfalse;
returntrue;
}
有的说js中没有startsWith和endWith这两个函数不过就算不声明有些浏览器他还是可以用的,不过为了兼容性还是希望重写一下。
if(typeofString.prototype.endsWith!='function'){
String.prototype.endsWith=function(suffix){
returnthis.indexOf(suffix,this.length-suffix.length)!==-1;
};
}
采用正则表达式实现startWith、endWith效果函数
String.prototype.startWith=function(str){
varreg=newRegExp("^"+str);
returnreg.test(this);
}
//测试ok,直接使用str.endWith("abc")方式调用即可
String.prototype.endWith=function(str){
varreg=newRegExp(str+"$");
returnreg.test(this);
}
以上这篇浅谈js中startsWith函数不能在任何浏览器兼容的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持毛票票。
热门推荐
6 保研的祝福语简短
10 年轻20岁祝福语简短
11 朋友结婚祝福语信息简短
12 女孩婚礼贺卡祝福语简短
13 30段点歌简短祝福语
14 虎年春节祝福语图文简短
15 写给后妈祝福语大全简短
16 简短回复生日祝福语
17 校长送毕业祝福语简短
18 毕业立体贺卡祝福语简短