-개념
하나의 문자열을 구분자를 이용하여 여러 개의 문자열로 나눈다.
string.split(cut, count)
1.cut
원본 문자열을 어떤 기준으로 끊어야 할지 설정한다. 즉, 문자열을 나누는 기준
2.count
끊을 문자열의 개수
-사용방법
1. 문자열 한 개씩 나누기
1
2
3
4
|
let split_string = 'super Pil';
let split_array = split_string.split('');
console.log(split_array);
// ["s", "u", "p", "e", "r", " ", "P", "i", "l"] 출력
|
let split_arry = split_string.split('')
split(나누는 기준) 이기 때문에 '' 할 경우 문자열 하나하나를 나눠서 배열에 담는다. 여기서 중요한 건 super 띄우고 Pil이기 때문에 공백까지 인식해서 빈 문자열로 같이 담긴다.
2. 공백 기준으로 나누기
1
2
3
4
|
let split_string = 'super Pil';
let split_array = split_string.split(' ');
console.log(split_array);
// ["super", "Pil"] 출력
|
let split_arry = split_string.split(' ')
이번에는 split(' ')에 한칸의 공백이 있기 때문에 super Pil에서 공백 기준으로 나눈다. 따라서 super, pil로 나뉜다.
1
2
3
4
|
let split_string = 'super Pil';
let split_arry = split_string.split(' ');
console.log(split_array);
// ["super Pil"] 출력
|
let split_arry = split_string.split(' ')
이번에는 split(' ')에 두칸의두 칸의 공백이 있기 때문에 두 칸의 공백 기준으로 나뉜다. 하지만 지금 문자열에 공백 한 칸뿐이기 때문에 super Pil이 한 개의 문자로 인식되어 출력된다. 즉, 공백의 칸수에 따라 나누는 기준이 달라진다.
3. 특정 구분으로 나누기
1
2
3
4
|
let split_string = '1011-2022-3303';
let split_array = split_string.split('-');
console.log(split_array);
// ["1011", "2022", "3303"] 출력
|
split_string.split('-')
split('-')을 사용하여 문자열에 '-' 구분으로 끊어서 배열에 담는다.
4. 제한해서 나누기
1
2
3
4
|
let split_string = 'I can do it';
let split_array = split_string.split(' ', 2);
console.log(split_array);
// ["I", "can"] 출력
|
split_string.split(' ', 2)
split(나누는 기준, 나눈 문자열을 몇 개 출력할 건지) ' ' 한 칸 공백 기준으로 나눠서 나눈 것 중에 2개만 출력한다.
만약, 3으로 바꾼다면 ["I", "can", "do"] 이 출력 된다.
-응용
1. 문자열 중에서 특정 문자를 다른 걸로 바꾸기
1
2
3
4
5
6
7
8
9
10
11
12
13
|
function splitEx(split_string) {
var split_array = split_string.split('');
console.log(split_array); // ["0", "1", "0", "1", "2", "3", "4", "5", "6", "7"]
for(var i = 0; i < split_array.length - 4; i++){
split_array[i] = '*';
}
console.log(split_array); // ["*", "*", "*", "*", "*", "*", "4", "5", "6", "7"]
console.log(split_array.join('')); // ******4567
}
splitEx('0101234567');
|
function splitEx(split_string)
split_string을 문자열 '0101234567'로 받는다.
var split_array = split_string.split('')
split('')를 사용하여 한 개로 되어있는 문자열을 각각 나눠서 split_array에 배열로 담는다.
for(var i = 0; i < split_array.length - 4; i++){
split_array [i] = '*';
}
반복을 통해 split_array총길이에서 -4를 한 만큼 반복시키고 '*'로 바꾼다.
split_array.join('')
join('')을 사용하여 배열을 다시 문자열로 바꾼다.
'개발노트 > Javascript' 카테고리의 다른 글
(JS) charAt() (2019/10/1) (0) | 2019.10.01 |
---|---|
(JS) fill() (2019/9/29) (0) | 2019.09.29 |
(JS) join() (2019/9/26) (0) | 2019.09.26 |
(JS) splice() (2019/9/26) (0) | 2019.09.26 |
(JS) indexOf() (2019/9/26) (0) | 2019.09.26 |
주니어 개발자의 성장 기록지
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!