IT/Web
[JavaScript] 자바스크립트 문자열 자르기 slice, substring, substr
액트
2022. 11. 10. 17:43
자바스크립트 문자열 추출하는 방법입니다.
다음 함수는 모두 문자열 잘라서 반환해주는 함수입니다. 약간의 작동 방법이 다릅니다.
파라미터로 입력받는 값이 다르니 주의하여 사용하시길 바랍니다.
substr(start index, length)
- 파라미터로 입력 받은 start index부터 length 길이만큼 문자열을 잘라내여 반환합니다.
- index는 0부터 시작합니다.
예제)
See the Pen Untitled by yunjunshin (@yjshin) on CodePen.
slice(start index, end index)
- 문자열에서 파라미터로 입력 받은 start index부터 end index 앞까지 잘라서 해당 문자열을 반환합니다.
- index는 0부터 시작합니다.
See the Pen Untitled by yunjunshin (@yjshin) on CodePen.
substring(start index, end index)
- 문자열에서 파라미터로 입력 받은 start index부터 end in index 앞 까지 잘라서 해당 문자열을 반환합니다.
- index는 0부터 시작합니다.
- slice 함수와의 차이점은 아래에서 말씀드리겠습니다.
예제)
See the Pen Untitled by yunjunshin (@yjshin) on CodePen.
위 예제에서 처럼 end index 앞까지 만을 잘라서 추출하여 반환합니다.
slice, substring 차이점
1. start index > end index 일 경우
- start < end 일 때는 동일하게 처리합니다.
- 하지만 파라미터로 전달되는 값이 start > end 일 경우 두 함수의 처리는 다릅니다.
- substring은 start와 end의 위치를 바꿔서 결과를 계산합니다.
- slice는 빈 문자열('')을 리턴합니다.
예제)
See the Pen Untitled by yunjunshin (@yjshin) on CodePen.
2. start index가 음수일 때
- substring은 start가 음수일 때 0으로 처리합니다.
- 예를 들어 substring(-3, 4)는 substring(0, 4)로 처리합니다.
- slice는 start가 음수일 때 문자열 끝에서부터 인덱스를 계산합니다.
- 예를 들어 slice(-3, 4)는 끝 인덱스부터 앞으로 3번째부터 처음 인덱스부터 4번째 인덱스 앞까지의 문자열을 잘라 반환합니다.
예제)
See the Pen Untitled by yunjunshin (@yjshin) on CodePen.
3. end index가 음수일 때
- substring은 end index가 음수일 때 0으로 처리됩니다
- slice는 문자열 끝에서 앞쪽으로 이동하여 인덱스를 계산합니다.
See the Pen Untitled by yunjunshin (@yjshin) on CodePen.