Phương thức flat
Phương thức flat giảm mức độ
lồng nhau của mảng đa chiều.
Có thể biến mảng thành mảng một chiều,
hoặc giảm số chiều xuống một giá trị
đã cho.
Cú pháp
let newArray = mảng.flat(mức độ nâng lên);
Ví dụ
Hãy lấy một mảng mới, mà không chỉ định bất kỳ giá trị nào trong tham số:
let arr = ['a', 'b', ['c', 'd']];
let res = arr.flat();
console.log(res);
Kết quả thực thi mã chúng ta sẽ thấy rằng các mảng con đã được nâng lên một cấp:
['a', 'b', 'c', 'd']
Ví dụ
Bây giờ hãy áp dụng phương thức
flat cho một mảng có hai cấp độ
lồng nhau:
let arr = ['a', 'b', ['c', 'd', ['e', 'f']]];
let res = arr.flat();
console.log(res);
Kết quả thực thi mã:
['a', 'b', 'c', 'd', ['e', 'f']]
Ví dụ
Hãy chỉ định mức độ lồng nhau:
let arr = ['a', 'b', ['c', 'd', ['e', 'f']]];
let res = arr.flat(2);
console.log(res);
Kết quả thực thi mã:
['a', 'b', 'c', 'd', 'e', 'f']
Ví dụ
Nếu chúng ta không muốn bận tâm về mức độ lồng nhau,
mà muốn hợp nhất toàn bộ mảng, thì sử dụng tham số Infinity:
let arr = ['a', 'b', ['c', 'd', ['e', 'f', ['g', 'h', ['i']]]]];
let res = arr.flat(Infinity);
console.log(res);
Kết quả thực thi mã:
[
'a', 'b', 'c',
'd', 'e', 'f',
'g', 'h', 'i'
]
Xem thêm
-
phương thức
flatMap,
trả về một mảng từ các phần tử sau khi áp dụng hàm