티스토리 뷰
substring(), slice() 비교
두 메소드는 문자열의 indexStart 부터 indexEnd 의 직전까지 부분 문자열을 반환한다는 공통점이 있지만 차이점 또한 존재함
1. indexStart > indexEnd, 시작 인덱스가 종료 인덱스보다 큰 경우
- substring() > indexStart 가 indexEnd 보다 큰 경우 두 위치를 바꿔서 처리함
- slice() > indexStart 가 indexEnd 보다 큰 경우 빈 문자열을 반환함
2. index < 0, 인덱스가 음수인 경우
- substring() > index 가 음수인 경우 index 를 0으로 처리
- slice() > index 가 음수인 경우에는 문자열의 끝에서부터 인덱스를 계산
- ex) 문자열의 마지막 인덱스는 음수로 표현하면 -1
let text = 'Mozilla';
console.log(text.slice(-5, 2)); // => ""
console.log(text.slice(-5, -2)); // => "zil" index -5 ~ -3 까지 반환
3. index == NaN, 인덱스가 숫자가 아닌 경우 (공통점)
- substring() > index 가 숫자가 아닌 경우 index 를 0으로 처리
- slice() > index 가 숫자가 아닌 경우 substring() 과 동일하게 index 를 0으로 처리
'Javascript & Typescript' 카테고리의 다른 글
[Javascript] Promise.all & Promise.race (0) | 2022.02.18 |
---|---|
[Javascript] 실행 컨텍스트(Execution Context), 스코프 체인(Scope Chain), 호이스팅(Hoisting) (0) | 2022.02.14 |
[Javascript] substring() method (0) | 2021.11.13 |
[Javascript] reduce() method (0) | 2021.11.13 |
[Javascript] filter() method (0) | 2021.11.12 |