Ứ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:
Xem thêm các việc làm công nghệ hấp dẫn trên TopDev
- i iOS 18 khi nào ra mắt? iOS 18 sẽ không hỗ trợ máy nào?
- V Về Logging: Mắt thần của bạn trên hệ thống thực
- M Middlewares – Sự tùy biến trong ứng dụng phần mềm
- Đ Đón đầu 7 xu hướng công nghệ hàng đầu trong năm 2024
- T Thực hiện “Chuẩn Hóa CV” nhận ngay quà hấp dẫn
- M METRO.digital Vietnam culture and ways of working
- G GW2790QT – Màn hình 2K tốt nhất dành cho lập trình viên
- S So sánh AWS, Google Cloud và Azure năm 2024
- D Data Analyst là gì? Chuyện nghề của một Data Analyst
- C Công nghệ nào đứng sau AI tạo ra MC ảo đang hot rần rần?