본문 바로가기

자바스크립트/기초

slice, substring, substr 차이

메서드 추출할 부분 문자열 음수 허용 여부(인수)
slice(start, end) start 부터 end까지(end는 미포함) 음수 허용
substring(start, end) start 와 end 사이 음수는 0으로 취급함
substr(start, length) start부터 length개의 글자 음수 허용

ℹ️  어떤 메서드를 선택해야 하나요?

모두 사용해도 괜찮습니다. 그런데 substr에는 단점이 하나 있습니다. substr는 코어 자바스크립트 명세서(ECMA-262 – 옮긴이)가 아닌, 구식 스크립트에 대응하기 위해 남겨 둔 브라우저 전용 기능들을 명시해 놓은 부록 B(Annex B)에 정의되어있습니다. 거의 모든 곳에서 이 메서드가 동작하긴 하지만 브라우저 이외의 호스트 환경에서는 제대로 동작하지 않을 수 있습니다.

남은 두 메서드 중 slice는 음수 인수를 허용한다는 측면에서 substring보다 좀 더 유연합니다. 메서드 이름도 더 짧죠. 따라서 세 메서드 중 slice만 외워놓고 사용해도 충분할 것 같습니다.

 

출처: https://ko.javascript.info/string

반응형

'자바스크립트 > 기초' 카테고리의 다른 글

TDZ (Temporal Dead Zone)  (1) 2021.06.28
객체 메소드(Object methods)  (1) 2021.06.27
isFinite  (0) 2021.06.25
함수 이름 짓기  (1) 2021.06.20
논리 연산자  (2) 2021.06.20