javascript indexOf 함수는 지정된 문자열에서 특정한 문자(열)의 첫번째 위치를 알려주는 함수입니다.
즉 왼쪽부터 문자을 읽다가 특정한 문자를 만나면 해당위치를 반환하는데 처음은 0 부터 시작합니다.
그와 반대로 lastIndexOf 함수는 오른쪽, 끝부터 읽어서 위치를 리턴합니다.
지정된 문자열에서 특정한 문자(열)을 찾지 못하면 -1을 반환하며
반환되는 타입은 해당 위치값이므로 숫자타입을 리턴받을수 있습니다.
input 파라미터는 찾고자하는문자열(searchvalue)과 시작위치(start)인데 시작위치가 생략되면 0부터 시작합니다.
이 함수의 예를 계속 문자열로만 예를 들었으나 배열에도 사용가능합니다.
[ javascript indexOf() 함수 ]
1. 시작위치 생략, 기본형
시작위치가 생략하면 0부터 시작하며 위 문자열에서 "two" 단어를 찾은 위치는 11로 나옵니다.
2. 시작위치 지정
"apple"을 찾는 스크립트인데 시작위치를 10을 주니 처음에 만나는 apple 단어는 지나가고 두번째 위치 15를 반환합니다.
3. 배열
배열인 경우에는 배열안의 각 아이템과 일치하는 배열위치를 반환합니다.
위의 예제인 경우 arr[0]="apple", arr[1]="orange", arr[2]="banana", arr[3]="nut", arr[4]="graph" 로 표시되는데
"orange"를 찾는 것이니 배열인덱스 1을 반환합니다.
4. 특정 문자열의 n번째 위치 가져오기
그럼 문자열 중 n 번째 위치를 가져오려면 어떻해야 할까요.
javascript indexOf 함수를 응용해서 위와 같은 함수를 만들면 n번째 위치에 있는 문자열의 위치값을 가져올수 있습니다.
사용자 함수 n_indexOf의 nth 의 번째를 입력하시면 됩니다.
[ javascript lastIndexOf() 함수 ]
indexOf 함수와 사용법은 동일하며 문자열 앞이 아닌 뒤에서 부터 시작합니다.
1. 시작위치 생략, 기본형
찾는 시작위치는 뒤에서 부터 찾습니다. 즉 문자열의 길이가 시작위치값이 됩니다.
그러나 리턴되는 값은 앞에서 부터 위치값을 리턴합니다. 즉 뒤어서 부터 찾고 찾는 곳의 위치를 앞에서 부터 셉니다.
2. 시작위치 지정
시작위치를 지정하면 약간 헷깔리는 부분이 있는데요.
시작위치를 끝으로 하고 그 끝에서부터 해단 단어를 찾는 위치를 반환하는 겁니다.
그밖에 배열의 경우에도 사용할 수 있으며 시작위치는 끝에서 부터 입니다.
이상으로 위치값을 알 수 있는 함수를 알아봤는데요.
문자열 다루는 일이 많기에 사용도 많이 됩니다.
lastIndexOf 의 경우도 파일경로를 포함하는 파일명에서 파일명만 가져올 경우 사용되는등 은근히 사용되는 경우가 많아
알아두시면 유용하게 써 먹을수 있을겁니다.
'JAVASCRIPT > 소스코드' 카테고리의 다른 글
[JavaScript] 파일명 및 확장자 체크 (0) | 2018.02.27 |
---|---|
[JavaScript] 날짜를 YYYYmmdd 형태로 반환하는 함수 (Date, format, yyyymmdd) (0) | 2018.02.27 |
[JAVASCRIPT] 이벤트 및 함수 (0) | 2016.05.03 |
[JAVASCRIPT] javascript의 기본 문법 3 (0) | 2016.05.03 |
[JAVASCRIPT] javascript의 기본 문법 2 (0) | 2016.05.03 |
[JAVASCRIPT] javascript의 기본 문법 1 (0) | 2016.05.03 |
JavaScript 2차원 배열 (0) | 2016.05.02 |
[JavaScript] replace (문자 치환) (0) | 2016.01.20 |