Ứng dụng hay của flatMap
Bài viết được sự cho phép của tác giả Lưu Bình An
Sử dụng flatMap
có thể giúp code ngắn hơn, ví dụ trong tình huống bên dưới
// filter các giá trị âm
// nhân đôi các giá trị dương còn lại
[-3,-1,1,3,5]
.filter(num => num >= 0)
.map(num => num * 2)
// -> [2, 6, 10]
Cách này không có gì sai, nhưng nếu muốn viết bằng một phương pháp khác thì sao?
[-3,-1,1,3,5].flatMap(num => {
if (num >= 0) {
return [num * 2]
}
return []
})
// -> [2, 6, 10]
Nếu muốn rút ngắn hơn nữa
[-3, -1, 1, 3, 5]
.flatMap((num) => (num >= 0 ? [num * 2] : []));
// -> [2, 6, 10]
Tuy nhiên, nếu xét về mặt viết-sao-cho-dễ-đọc thì có vẻ dùng filter
và map
sẽ tốt hơn, flatMap
được cái viết ngắn hơn.
Túm lại, ưng mắt cách nào hơn thì bạn viết cách đó.
Bài viết gốc được đăng tải tại vuilaptrinh.com
Có thể bạn quan tâm:
- B BenQ RD Series – Dòng Màn Hình Lập Trình 4k+ Đầu Tiên Trên Thế Giới
- i iOS 18 có gì mới? Có nên cập nhật iOS 18 cho iPhone của bạn?
- G Gamma AI là gì? Cách tạo slide chuyên nghiệp chỉ trong vài phút
- P Power BI là gì? Vì sao doanh nghiệp nên sử dụng PBI?
- K KICC HCMC x TOPDEV – Bước đệm nâng tầm sự nghiệp cho nhân tài IT Việt Nam
- T Trello là gì? Cách sử dụng Trello để quản lý công việc
- T TOP 10 SỰ KIỆN CÔNG NGHỆ THƯỜNG NIÊN KHÔNG NÊN BỎ LỠ
- T Tìm hiểu Laptop AI – So sánh Laptop AI với Laptop thường
- M MySQL vs MS SQL Server: Phân biệt hai RDBMS phổ biến nhất
- S SearchGPT là gì? Công cụ tìm kiếm mới có thể đánh bại Google?