본문 바로가기
개발공부_Blog/JavaScript

JavaScript 문자열찾기 ( indexOf, includes, substring, charAt, slice)

by 소팡팡 2022. 11. 8.

String.prototype.indexOf

  • 인수로 전달받은 문자열을 검색하여 첫 번째 인덱스를 반환한다. 검색에 실패하면 -1 을 반환한다.
  • 검색을 시작할 인덱스를 지정할 수 있다.
  • 대상 문자열에 특정 문자열이 존재하는지 확인할 때 유용하다
const str = 'hello World'

//문자열 str에서 'l'을 검색하여 첫번재 인덱스를 반환한다
str.indexOf('l')	// 2
str.indexOf('x')	// -1

// 검색을 시작할 인덱스를 지정할 수 있다. 
// 3번째 인덱스부터 'l'을 검색하고, 이후에 나온 'l'의 인덱스 번호를 반환한다
str.indexOf('l', 3) // 3

// 대상 문자열에 특정 문자열이 존재하는지 확인
if (str.indexOf('hello') !== -1){
	// str에 hello가 포함되어 있는 경우
}

 

String.prototype.includes

  • 인수로 전달받은 문자열이 포함되어 있는지 확인하고 그 결과를 true, false로 반환한다
  • 메서드의 2번째 인수로 검색을 시작할 수 있다
const str = 'hello World';

str.includes('hello');	// true
str.includes('x');	// false

 

 

String.prototype.charAt

인수로 전달받은 인덱스에 위치한 문자를 검색하여 반환한다
인덱스는 문자열의 범위 내에서만 반환 가능하다. 범위를 벗어난 정수인 경우, 빈 문자열을 반환한다.

const str = 'hello';

for (let i=0; i<str.length; i++){
	console.log(str.charAt(i)) // h e l l o ( 콘솔에 한 줄씩 출력 )
} 

// 범위를 넘어간 경우
str.charAt(5);	// ''

 

 

 

String.prototype.substring

  • 첫 번째 인수로 전달받은 인덱스에 위치하는 문자부터 ~ 두 번째 인수로 전달받은 인덱스에 위치하는 문자열 이전까지의 부분 문자열을 반환한다.
  • substring 메서드의 두 번째 인수는 생략할 수 있다. = 첫 번째 인수 ~ 마지막 인덱스까지의 문자열 출력
  • substring 메서드의 첫 번째 인수는 두 번째 인수보다 작은 정수여야 정상이다
const str = 'hello World'

// 인덱스 1 ~ 4까지의 문자열을 부분 반환한다.
 str.substring(1,4) // 'ell'
 str.substring(6) // 'World'

 

String.prototype.slice

substring메서드와 동일하게 동작한다. 
단, slice메서드에는 음수인 인수를 전달하여 대상 문자열의 가장 뒤에서부터 시작하여 문자열을 잘라내 반환한다.

const str = 'hello world';

str.slice(-2)	//'id'
str.slice(-5)	//'world'

 

댓글