>  기사  >  웹 프론트엔드  >  js의 startWith 기능은 어떤 브라우저와도 호환되지 않습니다.

js의 startWith 기능은 어떤 브라우저와도 호환되지 않습니다.

高洛峰
高洛峰원래의
2017-03-01 15:38:151711검색

 if (typeof String.prototype.startsWith != 'function') {
  String.prototype.startsWith = function (prefix){
  return this.slice(0, prefix.length) === prefix;
  };
}

이것은 페이지가 로드된 직후에 함수에 배치되어야 합니다. 작동하지 않습니다.

직접 다시 작성하는 방법도 있지만 테스트하지는 않았습니다.

String.prototype.startWith=function(str){ 
 if(str==null||str==""||this.length==0||str.length>this.length) 
  return false; 
 if(this.substr(0,str.length)==str) 
   return true; 
 else 
   return false; 
 return true; 
}

js에는 startWith, endWith 함수가 없다고 하시는 분들도 계시는데, 일부 브라우저에서는 선언하지 않아도 사용할 수 있지만 호환성을 위해 다시 작성하고 싶어하는 경우도 있습니다.

if (typeof String.prototype.endsWith != 'function') {
 String.prototype.endsWith = function(suffix) {
 return this.indexOf(suffix, this.length - suffix.length) !== -1;
 };
}

정규식을 사용하여 startWith 및 endWith 효과 함수 구현

String.prototype.startWith=function(str){
var reg=new RegExp("^"+str);
return reg.test(this);
}
//测试ok,直接使用str.endWith("abc")方式调用即可
String.prototype.endWith=function(str){
var reg=new RegExp(str+"$");
return reg.test(this);
}

위 내용 js의 startWith 함수가 어떤 브라우저와도 호환되지 않는 문제는 편집자가 공유한 내용이 모두 참고가 되기를 바라며, 또한 모두가 PHP 중국어 웹사이트를 지원해주기를 바랍니다.

js의 startWith 함수가 어떤 브라우저와도 호환되지 않는다는 문제에 대한 더 많은 관련 기사를 보려면 PHP 중국어 웹사이트에 주목하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.