이 기사 예제는 문자열이 서브 스트링을 포함하는지 여부를 결정하기위한 JS 방법을 설명합니다. 참조를 위해 공유하십시오. 세부 사항은 다음과 같습니다.
우리의 일일 프론트 엔드 개발에서, 우리는 종종 문자열에 서브 스트링이 포함되어 있는지 판단하는 경우가 종종 있습니다. 여기서는이 요구 사항에 대한 몇 가지 솔루션을 탐색하고 올바르게 사용합니다. 이상적으로, 우리가 찾고있는 것은 우리의 목적과 일치하는 방법 (x에 y가 포함 된 경우)과 true 또는 false를 반환하는 방법입니다.
1. String.prototype.indexof 및 String.prototype.lastindexof
이 두 가지 방법은 아마도 우리가 생각하는 가장 쉬운 일일 것입니다. 기판이 포함 된 경우 0보다 큰 인덱스를 반환합니다. 그렇지 않으면 우리의 이상적인 상황을 충족시키지 못하는 -1을 반환합니다.
코드 사본은 다음과 같습니다. var str = "내 블로그 이름은 프론트 엔드 개발 및 사용자 경험에서 벤자민 중심입니다.",
기판 = "벤자민";
함수 iscontains (str, substr) {
return str.indexof (substr)> = 0;
}
//진실
Console.log (iscontains (str, substr));
2. String.prototype.search
string.prototype.search 메소드를 생각했습니다. 검색 메소드의 매개 변수는 정규식이므로 Indexof의 경우와 동일합니다.
코드 사본은 다음과 같습니다. var str = "내 블로그 이름은 프론트 엔드 개발 및 사용자 경험에서 벤자민 중심입니다.",
기판 = "벤자민";
함수 iscontains (str, substr) {
새로운 regexp (substr) .test (str)를 반환합니다.
}
//진실
Console.log (iscontains (str, substr));
이 방법은 true 또는 false를 직접 반환하는 Indexof 메소드보다 더 좋아 보이며 메소드 이름 테스트는 indexof보다 시맨틱합니다.
3. String.prototype.contains
코드 사본은 다음과 같습니다. var str = "내 블로그 이름은 프론트 엔드 개발 및 사용자 경험에서 벤자민 중심입니다.",
기판 = "벤자민";
함수 iscontains (str, substr) {
return str.contains (substr);
}
//진실
Console.log (iscontains (str, substr));
이 방법은 현재 Firefox에서만 지원되며 여전히 ECMAScript 6 Draft에 있습니다. 이 방법은 위에서 언급 한 이상적인 상황을 충족합니다. 자세한 내용은 여기를 클릭하십시오. 포함 된 메소드를 사용하려면 타사 라이브러리 문자열을 참조 할 수 있습니다. 여기를 클릭하여 String.js를 다운로드하십시오. 소스 코드 구현 :
다음과 같이 코드를 복사하십시오 : contains : function (ss) {
this.s.indexof (ss)> = 0을 반환합니다.
},
다른 방법은 보충되어야합니다. . .
물론, 성능 문제와 관련하여 어떤 방법을 사용해야하는지는 여전히 테스트되어야합니다. 관심있는 친구들은 직접 테스트하고 싶을 수도 있습니다.
이 기사가 모든 사람의 JavaScript 프로그래밍에 도움이되기를 바랍니다.