JavaScript Array flatMap ()

Phương thức flatMap () của JavaScript Array trước tiên ánh xạ từng phần tử bằng cách sử dụng một hàm ánh xạ, sau đó làm phẳng nó thành một mảng mới.

Cú pháp của flatMap()phương thức là:

 arr.flatMap(callback(currentValue),thisArg)

Ở đây, arr là một mảng.

Thông số flatMap ()

Các flatMap()phương pháp có trong:

  • callback - Hàm thực thi ban đầu trên mỗi phần tử mảng. Nó có:
    • currentValue - Phần tử hiện tại đang được truyền từ mảng.
  • thisArg (tùy chọn) - Giá trị sử dụng như thiskhi thực thi callback.

Giá trị trả về từ flatMap ()

  • Trả về một mảng mới sau khi ánh xạ mọi phần tử bằng cách sử dụng callbackvà làm phẳng nó đến độ sâu 1 .

Ghi chú :

  • Các flatMap()phương pháp không làm thay đổi mảng gốc.
  • Các flatMap()phương pháp là tương đương với array.map().flat().

Ví dụ: Sử dụng phương thức flatMap ()

 const arr1 = (1, 2, 3, 4, 5); const newArr1 = arr1.flatMap((x) => (x ** 2)); console.log(newArr1); // ( 1, 2, 3, 4, 5 ) // can also be done as const intermediate = arr1.map((x) => (x ** 2)); console.log(intermediate); // ( ( 1 ), ( 4 ), ( 9 ), ( 16 ), ( 25 ) ) const newArr2 = intermediate.flat(); console.log(newArr2); // ( 1, 4, 9, 16, 25 ) const numbers = (1, 2, 3, 4, 5, 6, 7); // remove odd and split even element to two half elements function func(n) ( if (n % 2 === 0) ( return (n / 2, n / 2); ) else ( return (); ) ) const newArr3 = numbers.flatMap(func); console.log(newArr3); // ( 1, 1, 2, 2, 3, 3 )

Đầu ra

 (1, 4, 9, 16, 25) ((1), (4), (9), (16), (25)) (1, 4, 9, 16, 25) (1, 1, 2, 2, 3, 3)

Đề xuất đọc: Mảng JavaScript phẳng ()

thú vị bài viết...