>  기사  >  웹 프론트엔드  >  문자열에 substring_javascript 기술이 포함되어 있는지 확인하는 Node.js 메서드

문자열에 substring_javascript 기술이 포함되어 있는지 확인하는 Node.js 메서드

WBOY
WBOY원래의
2016-05-16 16:17:551283검색

이 문서의 예에서는 js가 문자열에 하위 문자열이 포함되어 있는지 확인하는 방법을 설명합니다. 참고할 수 있도록 모든 사람과 공유하세요. 세부 내용은 다음과 같습니다.

일상적인 프런트 엔드 개발에서 문자열에 특정 하위 문자열이 포함되어 있는지 확인하는 문제에 자주 직면합니다. 여기서는 이 요구 사항을 해결하고 올바르게 사용하는 몇 가지 방법을 살펴보겠습니다. 이상적으로 우리가 찾고 있는 것은 우리의 목적과 일치하고(x에 y가 포함된 경우) true 또는 false를 반환하는 메서드입니다.

1. String.prototype.indexOf 및 String.prototype.lastIndexOf

이 두 가지 방법은 우리가 생각하기 가장 쉬운 방법일 수 있습니다. 하위 문자열이 포함되어 있으면 0보다 크거나 같은 인덱스를 반환하고, 그렇지 않으면 이상적인 상황을 충족하지 않는 -1을 반환합니다.

코드 복사 코드는 다음과 같습니다.
var str = "내 블로그 이름은 Benjamin-Focus on front-end입니다. 개발 및 사용자 경험",
​ substr = "벤자민";

함수 isContains(str, substr) {
반환 str.indexOf(substr) >= 0;
}

//참
console.log(isContains(str, substr));

2. 문자열.프로토타입.검색

우리는 String.prototype.search 메소드를 생각했습니다. 검색 메소드의 매개변수는 정규식이므로 indexOf와 동일합니다.

코드 복사 코드는 다음과 같습니다.
var str = "내 블로그 이름은 Benjamin-Focus on front-end입니다. 개발 및 사용자 경험",
​ substr = "벤자민";

함수 isContains(str, substr) {
새로운 RegExp(substr).test(str)를 반환합니다.
}

//참
console.log(isContains(str, substr));

이 메서드는 indexOf 메서드보다 더 좋아 보입니다. 동시에, 메서드 이름 test는 indexOf보다 더 의미가 있습니다.

3. String.prototype.contains

코드 복사 코드는 다음과 같습니다.
var str = "제 블로그 이름은 Benjamin-Focus입니다. 프론트엔드 개발 및 사용자 경험",
​ substr = "벤자민";

함수 isContains(str, substr) {
str.contains(substr)을 반환합니다.
}

//참
console.log(isContains(str, substr));

이 방법은 현재 Firefox에서만 지원되며 여전히 ECMAScript 6 초안에 있습니다. 이 방법은 위에서 언급한 이상적인 상황을 충족합니다. 자세한 내용을 보려면 여기를 클릭하세요. 포함 방법을 사용하려면 타사 라이브러리 string.js를 참조하여 이 사이트에서 string.js를 다운로드하세요. 소스 코드 구현:
코드 복사 코드는 다음과 같습니다.
포함: 함수(ss) {
this.s.indexOf(ss) >= 0;
반환 },
다른 방법이 추가될 예정입니다. . .
물론 성능 문제와 관련하여 어떤 방법이 더 빠른지는 아직 테스트 대상으로 남아 있습니다. 관심 있는 친구들은 직접 테스트해 볼 수도 있습니다.

이 기사가 모든 사람의 JavaScript 프로그래밍 설계에 도움이 되기를 바랍니다.

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