WEB/Javascript
[JAVASCRIPT.INFO] 5.3 문자열
dev-olive
2023. 1. 4. 21:51
5.3 문자열
문자열의 불변성
문자열은 수정할 수 없음 문자열의 중간 글자 하나를 바꾸려고 하면 에러가 발생한다.
let str = 'Hi';
str[0] = 'h'; // Error: Cannot assign to read only property '0' of string 'Hi'
부분 문자열 추출하기
str.slice(start [,end])
문자열의 start
부터 end
까지(end
는 미포함)를 반환
let str = "stringify";
alert(str.slice(0,5)); // 'strin', 0번째부터 5번째 위치까지(5번째 위치의 글자는 포함하지 않음)
두 번째 인수가 생략된 경우엔, 명시한 위치부터 문자열 끝까지를 반환
let str = "stringify";
alert( str.slice(2) ); // ringify, 2번째부터 끝까지
start
와 end
는 음수가 될 수 있음 음수를 넘기면 문자열 끝에서부터 카운팅
let str = "stringify";
alert( str.slice(-4, -1) ); // gif
str.substring(start [, end])
start
와 end
사이에 있는 문자열을 반환함
substring
은 slice
와 유사하지만 start
가 end
보다 커도 괜찮다는 데 차이가 있음
let str = "stringify";
// 동일한 결과
alert( str.substring(2,6) ); // "ring"
alert( str.substring(6,2) ); // "ring"
alert( str.slice(2,6) ); // "ring"
alert( str.slice(6,2) ); // ""
substring
은 음수 인수를 허용하지 않고 음수는 0
으로 처리됨
str.substr(start [, length])
start
에서부터 시작해 length
개의 글자를 반환
substr
은 끝 위치 대신에 길이를 기준으로 문자열을 추출함
let str = "stringify";
alert( str.substr(2, 4) ); // ring, 두 번째부터 글자 네 개
// 첫 번째 인수가 음수면 뒤에서부터 개수를 셈
alert (str.substr(-4, 2) ); // gi, 끝에서 네번째 위치부터 글자 두 개