charAt()
구분 | 데이터(값) |
data | 반환대상 |
파라미터 | 반환기준 index |
반환 | 인덱스 ~번째 문자 |
인덱스의 문자를 반환
var value = "sports";
log(value.charAt(1)); //p 함수로 호출
log(value[1]) //p 프로퍼티 값의 이름으로 호출
인덱스는 0부터 시작.
문자열 길이보다 인덱스가 크면 빈 문자열 반환
var value = "sports";
log(vlaue.charAt(12)); // 문자열의 수는 6. 그보다 큰 12번째 문자를 출력해달라고 하면 빈 문자열 반환
일반적으로 존재하지 않으면 undefined 반환
var value = "sports";
log(value[12]); // 12번째 인덱스가 없어 undefined 반환. value.charAt(12)에서 빈문자열을 반환한 것과는 차이가 있음.
개념적으로 undefined반환이 적절. undefined는 인덱스 ~번째가 없다는 뉘앙스가 강함.
indexOf()
구분 | 데이터(값) |
data | 검색대상 |
파라미터 | 검색할 문자열 |
검색시작 위치, 디폴트 : 0 | |
반환 | 인덱스 |
data 위치의 문자열에서 파라미터의 문자와 같은 첫번째 인덱스를 반환
검색기준
왼쪽에서 오른쪽으로 검색
var vlaue = "123123";
log(value.indexOf(2)); // '2'의 인덱스는 1이므로 1 반환.
log(value.indexOf(23); // 처음의 검색되는 문자는 '2'그래서 2의 인덱스는 1이므로 1반환.
두번째 파라미터를 작성하면 작성한 인덱스부터 검색
var value = "123123";
log(value.indexOf(2, 3)); // 검색할 문자열은 2, 검색시작 위치는 3 . 3번인덱스가 있는곳부터 "2"를 찾음. '2'가 4번 인덱스에 있으므로 4를 반환함.
같은 문자가 없으면 -1반환
var value = "123123";
log(value.indexOf(15)); //문장열중에 '15'가 없으므로 -1반환.
var value = "123123";
log(value.indexOf(2, -1)); // 두번째 파라미터 값이 0보다 작으면 처음부터 검색. 2의 인덱스는 1. 1반환
log(value.indexOf(2, 9)); // 두번째 파라미터 값이 length보다 크면 -1 반환. -1
log(value.indexOf(2, "A")); // 두번째 파라미터가 NaN이면 처음부터 검색. 2의 인덱스는 1. 1반환.
lastIndexOf()
구분 | 데이터(값) |
data | 검색대상 |
파라미터 | 검색할 문자열 |
검색시작 위치, 디폴트 : 0 | |
반환 | 인덱스 |
data 위치의 문자열에서 파라미터의 문자와 같은 인덱스를 반환. 단 뒤에서 앞으로 검색
var value = "123123";
log(value.lastIndsxOf(2)); // 뒤에서부터 문자열 2를 찾고 2의 인덱스는 4이므로 4반환.
검색기준
두번째 파라미터를 작성하면 작성한 인덱스부터 검색
var value = "1231231";
log(value.lastIndexOf(1, 4)); // 검색시작 위치가 4. 두번째 2부터 왼쪽으로 진행. 2앞에 1 위치. 1의 인덱스는 3.
log(value.lastIndexOf(2, -1)); // 두번째 파라미터가 0보다 작으면 -1반환.
같은 문자가 없으면 -1 반환
'javascript' 카테고리의 다른 글
문자열추출 (0) | 2021.09.28 |
---|---|
문자열 연결, 대소문자 변환 (0) | 2021.09.27 |
함수호출구조(?) (0) | 2021.09.23 |
length 값 반환 논리 (0) | 2021.09.23 |
length 값 반환 논리 (0) | 2021.09.16 |