es6에서는 flat() 메서드를 사용하여 2차원 배열을 1차원 배열로 변환할 수 있습니다. 이 메서드는 기본적으로 배열 레이어를 "평탄화"합니다. 매개변수를 사용하여 레이어 수를 설정할 수 있습니다. 이 메서드는 새 배열만 반환하며 원래 배열은 변경되지 않으며 구문은 "2차원 array.Flat()"입니다.
이 튜토리얼의 운영 환경: Windows 10 시스템, ECMAScript 버전 6.0, Dell G3 컴퓨터.
메서드: flat(); 매개변수 2, 3, 4..., Infinity를 허용합니다.
Flat():
1. -차원 배열- -->1차원 배열입니다. 이 메서드는 새 배열을 반환하며 원본 데이터에는 영향을 주지 않습니다.
[1,2,[2,3],[2,2]].flat() //[1, 2, 2, 3, 2, 2]
2.flat()는 기본적으로 하나의 레이어만 "평면화"하며 기본값은 1입니다. 다중 레이어 중첩 배열을 "평면화"하려면 flat() 메서드의 매개 변수를 다음과 같이 작성할 수 있습니다. 레이어를 병합하려는 것을 나타내는 정수입니다.
[1, 2, [3, [4, 5]]].flat() // [1, 2, 3, [4, 5]] [1, 2, [3, [4, 5]]].flat(2) // [1, 2, 3, 4, 5]
3. 중첩 수준에 상관없이 1차원 배열로 변환하려면 Infinity 키워드를 매개변수로 사용하면 됩니다.
원래 배열에 공백이 있는 경우 flat() 메서드는 공백을 건너뜁니다.
[1, [2, [3,4]]].flat(Infinity) // [1, 2, 3, 4] [1, 2, , 4, 5].flat() // [1, 2, 4, 5]
예제는 다음과 같습니다.
const a = [1, 2, 3, 4, 3]; const b = [3, 4, [5, 6]]; const c = [3, 4, [5, 6, [7, 8]]]; // 不传默认是二维数组降一维数组 console.log(a.concat(b).flat()); // 打印为[1, 2, 3, 4, 3, 3, 4, 5, 6] console.log(a.concat(c).flat(3)) // 打印为[1, 2, 3, 4, 3, 3, 4, 5, 6, 7, 8] // 如果数组嵌套太过复杂可直接传值Infinity console.log(a.concat(c).flat(Infinity)) // 打印为[1, 2, 3, 4, 3, 3, 4, 5, 6, 7, 8]
[관련 권장 사항: javascript 비디오 튜토리얼, web front-end]
위 내용은 es6 2차원 배열을 1차원 배열로 변환하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!