어떤 문자열이 있다고 가장하자.


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가 출력된다.



Posted by sungho88
,