Lọc
Bài học 12 trên 18 trong khóa học Các phương thức mảng trong JavaScript của Coddy.
Phương thức filter() là hàm tích hợp sẵn dành cho mảng, tạo ra một mảng mới chỉ chứa các phần tử vượt qua một phép kiểm tra được thực hiện bằng hàm callback được cung cấp. Phương thức này duyệt qua từng phần tử của mảng ban đầu và áp dụng hàm callback cho phần tử đó. Nếu hàm callback trả về true cho một phần tử, phần tử đó sẽ được đưa vào mảng mới đã lọc. Nếu không, phần tử đó sẽ bị loại.
Hãy tưởng tượng bạn có một danh sách điểm đánh giá phim (số) và muốn tạo một danh sách mới chỉ gồm những phim có điểm trên 4 sao. Sau đây là cách bạn có thể dùng filter():
const ratings = [3.5, 4.8, 2.9, 5.0, 4.2];
// Hàm (function) callback kiểm tra xem điểm đánh giá có lớn hơn 4 không
const goodMovies = ratings.filter(rating => rating > 4);
console.log(goodMovies); // Đầu ra: [4.8, 5.0]Trong ví dụ trên, phương thức filter() duyệt qua mảng ratings và chỉ giữ lại những phần tử đáp ứng điều kiện được nêu trong hàm callback (rating => rating > 4).
Thử thách
DễMột mảng có tên friends chứa danh sách bạn bè và trạng thái của họ.
Nhiệm vụ của bạn là tạo một danh sách mới chỉ gồm những người bạn đang trực tuyến, rồi in ra mảng đã lọc.
Tự làm thử
const friends = [
{ name: "Alice", online: true },
{ name: "Bob", online: false },
{ name: "Charlie", online: true },
{ name: "David", online: false }
];
// Viết code ở đâyTất cả bài học trong Các phương thức mảng trong JavaScript
1Bạn sẽ học được gì?
Các phương thức của mảng trong JSTự luyện tập: Trình biên dịch JavaScript online