어떤 문자열이 있다고 가장하자.
string txt = "Hello My Name is JANG.";
이 때, 특정 문자열(Hello, My, Name, is, JANG, Hell, Nam 등등 모든 문자열 가능)
이 포함되어 있는지 확인하고 싶다면,
indexOf()메소드를 사용하면 된다.
주의할 점은,
if문에서,
if (txt.indexOf("Hello")) {
로 생각할 수 있지만, 아니다.
index의 반환값은
Hello라는 문자열이 없을 때 -1을 반환한다고 한다.
하지만, if 조건문에서
0, -0, null, false, NaN, undefined, ' '
을 제외한 모든 값들은 true이다. -1도 true로 인식되므로, 위 if문은 항상 true가 된다.
그래서,
if (txt.indexOf("JANG") !== -1) {
alert("Find txt : JANG");
}
이렇게 -1 이 아니라면, 조건을 해줘야 한다.
-1이 아니라는 것은 string txt에 문자열이 존재한다는 것이므로 true가 발생,
-1이라는 것은 없다는 것이므로 false가 출력된다.
'개발 > 자바스크립트' 카테고리의 다른 글
[Javascript] moment.js를 이용하여 특정 날짜로부터 몇 일 후 구하기 (0) | 2019.01.30 |
---|---|
[자바스크립트] Date()객체로 날짜 구하기 & moment() 객체로 날짜 구하기 (0) | 2018.12.19 |
[자바스크립트] Math() 함수를 이용해서 올림, 반올림, 버림 적용하기 (0) | 2018.09.18 |
[Javascript] 자바스크립트에서 숫자 세자리마다 콤마(,) 찍는 방법!! (0) | 2018.08.31 |
[ECMAScript6] 기존의 var 키워드와 let, const 키워드 (0) | 2018.08.04 |