subString()
구분 | 데이터(값) |
data | 반환대상 |
파라미터 | 시작 인덱스 |
끝 인덱스 | |
반환 | 결과 |
파라미터의 시작 인덱스부터 끝 인덱스 직전까지 반환
var value = "01234567";
log(value.substring(2, 5); //234 2번 인덱스 2부터 5번 인덱스 5 앞인 4까지 출력해야함.
두번째 파라미터를 작성하지 않으면 반환대상의 끝까지 반환
var value = "01234567";
log(value.substring(5)); //567
log(value.substring()); // 01234567 파라미터를 모두 작성하지 않으면 전체 반환
다양한 추출 조건 작성
var value = "01234567";
log(value.substring(5, 20)); //두번째 파라미터 값이 전체 length(8)보다 크면 전체 문자열 length를 사용. 5번 인덱스부터 끝까지 반환. 567
log(value.substirng(-7, 2)); //파라미터 값이 음수이면 0으로 간주하여 0번 인덱스부터 2번 인덱스 직전까지 반환. 01
log(value.substring(5, 1)); // 첫번째 파라미터 값이 두번째보다 크면 파라미터 값을 바꿔서 처리. value.subString(1, 5) 형태가 되며 1234가 반환됨.
log(value.substring(5, "A")); // NaN는 0으로 간주. 첫번째 파라미터 값이 두번째보다 크므로 (0,5)형태가 되며 01234 반환.
substr()
구분 | 데이터(값) |
data | 반환대상 |
파라미터 | 시작 인덱스 |
반환할 문자 수 | |
반환 | 결과 |
파라미터의 시작 인덱스부터 지정한 문자수를 반환.
var value = "01234567";
log(value.substr(0, 3)); //0번인덱스부터 문자 3개 반환. 012
첫번째 파라미터 값이 음수이면 length에서 파라미터 값을 더해 시작 인덱스로 사용
log(value.substr(-3, 3)); //?
두번째 파라미터를 작성하지 않으면 양수 무한대로 간주
log(value.substr(4)); //4번 인덱스부터 쭉 4567
log(value.substr()); //첫번째 파라미터를 작성하지 않으면 0으로 간주하며 전체가 반환됨. 01234567
slice()
구분 | 데이터(값) |
data | 반환대상 |
파라미터 | 시작인덱스 |
끝 인덱스 | |
반환 | 결과 |
파라미터의 시작 인덱스부터 끝 인덱스 직전까지 반환.
var value = "01234567";
log(value.slice(1, 4)); //123
log(value.slice(false, 4)); //false, undefined, null, 빈 문자열은 0으로 간주. 0123
첫번째 파라미터 값을 작성하지 않거나 NaN이면 0으로 간주.
log(value.slice("A")); //NaN이므로 0으로 간주. 01234567
log(value.slice()); //파라미터 값을 작성하지 않아 전체 반환. 01234567
두번째 파라미터 작성하지 않으면 length사용.
log(value.slice(5)); //567
log(value.slice(5, 3)); // 첫번째 파라미터가 두번째 파라미터보다 크거나 같으면 빈 문자열 반환.
두번째 파라미터 값이 음수이면 length에 더해 사용.
log(value.slice(4, -2)); //45
log(value.slice(-5, -2)); //(3,6) 345
log(value.slice(-2, -5)); //(6,3)이므로 첫번째 파라미터가 두번째 파라미터보다 커서 빈문자열 반환.
'javascript' 카테고리의 다른 글
Unicode 관련 함수 (0) | 2021.09.30 |
---|---|
정규표현식을 사용할 수 있는 함수 (0) | 2021.09.29 |
문자열 연결, 대소문자 변환 (0) | 2021.09.27 |
인덱스로 문자열 처리 (0) | 2021.09.27 |
함수호출구조(?) (0) | 2021.09.23 |