본문 바로가기

IT/JavaScript

[자바스크립트] 자바스크립트 indexOf java의 contains 착각 NO

안녕하세요 남갯입니다


오늘은 자바스크립트에서 indexOf에 대해 알려드리도록 하겠습니다


자바에서는 보통 contains를 통해 문자열이 포함되어있는지 확인하는데,


자바스크립트엔 indexOf를 이용합니다.



str.indexOf(찾을 값 , 특정 값)


찾을값 = 내가 찾고자하는 문자열

특정값 = 찾고자하는 시작 배열 순서입니다.

만약 시작 인덱스가 길이보다 길다면 바로 -1을 반환합니다.


'Blue Whale'.indexOf('Blue');     // returns  0

'Blue Whale'.indexOf('Blute');    // returns -1

'Blue Whale'.indexOf('Whale', 0); // returns  5

'Blue Whale'.indexOf('Whale', 5); // returns  5




이와같이 왼쪽문자는 찾을 문자열, 뒤에 숫자는 순번을 뜻하게됩니다


존재하지 않을경우 -1을 반환하기떄문에



'Blue Whale'.indexOf('Blue') !== -1;                    

 

// indexOf 메서드는 0을 반환하므로 결과값은 true  

  

'Blue Whale'.indexOf('Bloe') !== -1;                 

    

// indexOf 메서드는 -1을 반환하므로 결과값은 false 



이와같은 형태가 되게됩니다.


blue는 있는글자이므로 -1이 아니니 ture

bloe는 없는 글자이므로 -1이므로 false입니다







출처 모질라 https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/String/indexOf