문자열 메서드 : slice() / substring() / substr()
문자열 메서드를 활용하면 문자열에서 원하는 값을 추출할 수 있습니다. 문자열 베서드 slice() / substring() / substr()는 서로 비슷하지만, 차이점이 있습니다. 차이점을 잘 숙지하도록 합니다.
> slice() 메서드
slice() 메서드는 문자열에서 시작위치 이후의 값을 추출하여 문자열로 반환해 줍니다. 괄호() 안에는 시작 위치와 끝나는 위치를 작성할 수 있으며, 시작 위치의 값은 항상 끝나는 위치의 값보다 작아야 합니다. 음수를 작성할 경우, 뒤에서부터 추출합니다.
"문자열".slice(시작위치, 끝나는위치)
번호 | 기본값 | 메서드 | 리턴값 |
---|---|---|---|
1 | "javascript reference" | slice(0) | javascript reference |
2 | "javascript reference" | slice(2) | vascript reference |
3 | "javascript reference" | str1.slice(0, 3) | jav |
4 | "javascript reference" | str1.slice(-3, -2) | n |
const str1 = "javascript reference";
const currentStr1 = str1.slice(0); //javascript reference
const currentStr2 = str1.slice(1); //avascript reference
const currentStr3 = str1.slice(2); //vascript reference
const currentStr4 = str1.slice(0, 1); //j
const currentStr5 = str1.slice(0, 2); //ja
const currentStr6 = str1.slice(0, 3); //jav
const currentStr7 = str1.slice(1, 2); //a
const currentStr8 = str1.slice(1, 3); //av
const currentStr9 = str1.slice(1, 4); //avs
const currentStr10 = str1.slice(-1); //e
const currentStr11 = str1.slice(-2); //ce
const currentStr12 = str1.slice(-3); //nce
const currentStr13 = str1.slice(-3, -1); //nc
const currentStr14 = str1.slice(-3, -2); //n
const currentStr15 = str1.slice(-3, -3); //
//시작 위치의 값이 끝나는 위치의 값보다 크거나 같으면 반환되는 값이 없습니다.(출력x)
> substring() 메서드
substring() 메서드는 문자열에서 시작위치 이후의 값을 추출하여 문자열로 반환해 줍니다. 괄호() 안에는 시작 위치와 끝나는 위치를 작성할 수 있으며, 시작 위치의 값은 끝나는 위치의 값보다 작아야한다는 점은 slice() 메서드와 같지만, substring() 메서드는 시작 위치의 값이 더 작은 경우 에러발생을 방지하기 위해 시작위치와 끝나는위치의 값이 바뀐 것을 인지하고 제대로 출력해 줍니다. 음수를 작성할 경우, 뒤에서부터 추출합니다.
"문자열".substring(시작위치, 끝나는위치)
번호 | 기본값 | 메서드 | 리턴값 |
---|---|---|---|
1 | "javascript reference" | substring(1, 4) | ava |
2 | "javascript reference" | substring(4, 1) | ava |
const str1 = "javascript reference";
const currentStr16 = str1.slice(1, 4); //ava
const currentStr17 = str1.slice(4, 1); //
const currentStr18 = str1.substring(1, 4); //ava
const currentStr19 = str1.substring(4, 1); //ava
//sbstring()은 시작점과 끝점을 바궈 써도 잘못된걸 인지하고 제대로 출력해준다.
> substr() 메서드
substr() 메서드는 문자열에서 시작위치 이후의 값을 추출하여 문자열로 반환해 줍니다. 괄호() 안에는 시작 위치와 길이를 작성할 수 있으며, 시작 위치로부터 길이 값 만큼의 문자열을 반환합니다. 시작 위치를 음수로 작성할 경우, 뒤에서부터 추출합니다. 길이는 양수여야 합니다.
"문자열".substr(시작위치, 길이)
번호 | 기본값 | 메서드 | 리턴값 |
---|---|---|---|
1 | "javascript reference" | substr(0) | javascript reference |
2 | "javascript reference" | substr(2) | vascript reference |
3 | "javascript reference" | substr(0, 1) | j |
4 | "javascript reference" | substr(1, 4) | avas |
5 | "javascript reference" | substr(-1) | e |
6 | "javascript reference" | str1.substr(-1, 3) | nce |
const str1 = "javascript reference";
const currentStr20 = str1.substr(0); //javascript reference
const currentStr21 = str1.substr(1); //avascript reference
const currentStr22 = str1.substr(2); //vascript reference
const currentStr23 = str1.substr(0, 1); //j
const currentStr24 = str1.substr(0, 2); //ja
const currentStr25 = str1.substr(0, 3); //jav
const currentStr26 = str1.substr(1, 2); //av
const currentStr27 = str1.substr(1, 3); //ava
const currentStr28 = str1.substr(1, 4); //avas
const currentStr29 = str1.substr(-1); //e
const currentStr30 = str1.substr(-2); //ce
const currentStr31 = str1.substr(-3); //nce
const currentStr32 = str1.substr(-1, 1); //e
const currentStr33 = str1.substr(-1, 2); //ce
const currentStr34 = str1.substr(-1, 3); //nce
'Javascript' 카테고리의 다른 글
문자열 메서드 : replace() / replaceAll() (3) | 2022.08.17 |
---|---|
문자열 메서드 : indexOf() / lastIndexOf() (7) | 2022.08.16 |
정규식 표현 알아보기 (5) | 2022.08.16 |
내장 함수 알아보기 (5) | 2022.08.13 |
배열 메서드 : join() / push() / pop() (9) | 2022.08.11 |
댓글