split, slice, substring
2020. 2. 15. 22:28ㆍJavaScript
String.prototype.split(구분자) [immutable]
- 문자열을 지정된 구분자로 여러 개의 문자열로 나눔
- csv파일을 다룰 때 유용
- 빈 문자열이 주어졌을 경우 빈 문자열을 포함한 배열 반환
- 문자열, 구분자 모두 빈 문자열일 경우 빈 배열 반환
- 반환값: 끊어진 문자열을 담은 배열
const str1 = 'Now you gonna take me there';
str1.split(' ');
//result: ["Now", "you", "gonna", "take", "me", "there"]
const str2 = '010-1234-5678';
str2.split('-');
//result: ["010", "1234", "5678"]
str2.split('');
//result: ["0", "1", "0", "-", "1", "2", "3", "4", "-", "5", "6", "7", "8"]
const str3 = '';
str3.split(', ');
//result: [""]
str3.split('');
//result: []
Array.prototype.slice(시작 인덱스, 끝 인덱스) [immutable]
String.prototype.slice(시작 인덱스, 끝 인덱스) [immutable]
- 주어진 시작과 끝(끝은 미포함) 인덱스까지의 얕은 복사본을 반환
- 끝 인덱스 생략시 끝까지 복사
- 시작 인덱스 생략시 0번 인덱스부터 복사
- 시작 인덱스가 배열의 길이보다 큰 경우는 빈 배열 반환
- 인덱스값이 음수일 경우 끝에서부터의 길이를 의미
- 반환값: 복사한 요소 포함한 새로운 배열 / 문자열
const arr = ['HTML', 'CSS', 'JavaScript', 'Python', 'Java', 'C'];
arr.slice(1, 4);
//result: ['CSS', 'JavaScript', 'Python', 'Java']
arr.slice(3);
//result: ['Python', 'Java', 'C']
arr.slice();
//result: ['HTML', 'CSS', 'JavaScript', 'Python', 'Java', 'C']
arr.slice(7);
//result: []
arr.slice(3, -1);
//result: ['Python', 'Java']
String.prototype.substring(시작 인덱스, 끝 인덱스) [immutable]
- 문자열의 시작 인덱스부터 끝 인덱스 전까지의 문자열 반환
- 시작 인덱스가 끝 인덱스보다 큰 경우 두 인자가 바뀐 것처럼 작동
- 0보다 작은 값을 가질 경우는 0으로, 문자열의 길이보다 큰 값을 가질 경우는 문자열의 길이로 처리됨
- 반환값: 추출된 부분 문자열 반환
const str = 'JavaScript';
str.substring(0, 4);
//result: "Java"
str.substring();
//result: "JavaScript"
str.substring(10, 5);
//result: "Script"
'JavaScript' 카테고리의 다른 글
rest parameter, arguments, spread 연산자 (0) | 2020.03.03 |
---|---|
template 태그 & fragment (0) | 2020.03.01 |
concat, indexOf, includes (0) | 2020.02.15 |
object의 메소드 (0) | 2020.02.14 |
Object의 Dot Notation & Bracket Notation, 연산자 (0) | 2020.02.14 |