JavaScript/기초
자바스크립트[기초] Array.prototype.join | Array.prototype.flat
뿌비
2022. 4. 18. 19:17
728x90
Array.prototype.join
- 원본 배열의 모든 요소를 문자열로 변환한 후, 인수로 전달받은 문자열, 즉 구분자로 연결한 문자열을 반환한다.
- 구분자는 생략 가능하며 기본 구분자는 콤마(',')이다.
const arr =[1,2,3,4];
// 기본 구분자는 콤마 , 이다
// 원본 배열 arr의 모든 요소를 문자열로 변환한 후 기본 구분자로 연결한 문자열을 반환한다.
arr.join(); // '1,2,3,4';
// 원본 배열 arr의 모든 요소를 문자열로 변환한 후 빈 문자열로 연결한 문자열을 반환한다.
arr.join(''); // '1234'
// 원본 배열 arr의 모든 요소를 문자열로 변환한 후 구분자 ':'로 연결한 문자열을 반환한다.
arr.join(':');// '1:2:3:4'
Array.prototype.flat
- ES10에서 도입된 flat 메소드는 인수로 전달한 깊이만큼 재귀적으로 배열을 평탄화 한다.
- 중첩 배열을 평탄화할 깊이를 인수로 전달할 수 있다.
- 인수를 생략할 경우 기본값은 1이다.
- 인수로 Infinity를 전달하면 중첩 배열 모두를 평탄화 한다.
[1,[2,3,4,5]].flat(); //[1,2,3,4,5]
// 중첩 배열을 평탄화하기 위한 깊이 값의 기본값은 1이다
[1,[2,[3,[4]]]].flat(); //[1,2,[3,[4]]]
[1,[2,[3,[4]]]].flat(1); //[1,2,[3,[4]]]
// 중첩 배열을 평탄화하기 위한 깊이 값을 2로 지정하여 2단계 깊이 까지 평탄화 한다.
[1,[2,[3,[4]]]].flat(2); //[1,2,3,[4]]
// 2번 평탄화한 것과 동일하다.
[1,[2,[3,[4]]]].flat().flat(); //[1,2,3,[4]]
// 중첩 배열을 평탄화 하기 위한 깊이 값을 Infinity로 지정하여 중첩 배열 모두를 평탄화한다.
[1,[2,[3,[4]]]].flat(Infinity); //[1,2,3,4]
728x90