Trong bài viết này, chúng tôi sẽ cố gắng hiểu cách chúng tôi có thể lọc hoặc tách một số dữ liệu nhất định khỏi mảng đối tượng trong ES6
Trước tiên chúng ta hãy cố gắng hiểu làm thế nào chúng ta có thể tạo một mảng các đối tượng bằng cách tuân theo cú pháp nhất định do JavaScript cung cấp
Mảng đối tượng Javascript
- Mảng đối tượng giúp bất kỳ người dùng nào lưu trữ nhiều giá trị trong một biến
- Nó thực sự lưu trữ một bộ sưu tập có kích thước cố định được truy cập tuần tự và cùng loại
- Bằng cách sử dụng cú pháp sau, chúng ta có thể dễ dàng tạo một mảng gồm nhiều đối tượng
cú pháp. Bằng cách sử dụng cú pháp sau, chúng ta có thể tạo một mảng các đối tượng một cách dễ dàng
let array_of_objects = [ { property-name: value}, { property-name: value}, ... ]
Chúng ta hãy xem ví dụ sau để hiểu rõ hơn về cách tạo một mảng các đối tượng
Thí dụ. Trong ví dụ này, chúng ta sẽ tạo một mảng cơ bản trong Javascript
Javascript
[ { name: 'ABC', age: 18 }, { name: 'GeeksforGeeks', age: 30 }, { name: 'DEF', age: 50 } ]9
[ { name: 'ABC', age: 18 }, { name: 'GeeksforGeeks', age: 30 }, { name: 'DEF', age: 50 } ]0
[ { name: 'ABC', age: 18 }, { name: 'GeeksforGeeks', age: 30 }, { name: 'DEF', age: 50 } ]1
[ { name: 'ABC', age: 18 }, { name: 'GeeksforGeeks', age: 30 }, { name: 'DEF', age: 50 } ]2
[ { name: 'ABC', age: 18 }, { name: 'GeeksforGeeks', age: 30 }, { name: 'DEF', age: 50 } ]3
[ { name: 'ABC', age: 18 }, { name: 'GeeksforGeeks', age: 30 }, { name: 'DEF', age: 50 } ]4
[ { name: 'ABC', age: 18 }, { name: 'GeeksforGeeks', age: 30 }, { name: 'DEF', age: 50 } ]0
[ { name: 'ABC', age: 18 }, { name: 'GeeksforGeeks', age: 30 }, { name: 'DEF', age: 50 } ]2____23
[ { name: 'ABC', age: 18 }, { name: 'GeeksforGeeks', age: 30 }, { name: 'DEF', age: 50 } ]3
[ { name: 'ABC', age: 18 }, { name: 'GeeksforGeeks', age: 30 }, { name: 'DEF', age: 50 } ]4
[ { name: 'ABC', age: 18 }, { name: 'GeeksforGeeks', age: 30 }, { name: 'DEF', age: 50 } ]2____23
[ { name: 'ABC', age: 18 }, { name: 'GeeksforGeeks', age: 30 }, { name: 'DEF', age: 50 } ]7____18
[ { name: 'ABC', age: 18 }, { name: 'GeeksforGeeks', age: 30 }, { name: 'DEF', age: 50 } ]0
[ { name: 'ABC', age: 18 }, { name: 'GeeksforGeeks', age: 30 }, { name: 'DEF', age: 50 } ] [ { name: 'GeeksforGeeks', age: 30 }, { name: 'DEF', age: 50 } ]0
[ { name: 'ABC', age: 18 }, { name: 'GeeksforGeeks', age: 30 }, { name: 'DEF', age: 50 } ]0
[ { name: 'ABC', age: 18 }, { name: 'GeeksforGeeks', age: 30 }, { name: 'DEF', age: 50 } ] [ { name: 'GeeksforGeeks', age: 30 }, { name: 'DEF', age: 50 } ]2
[ { name: 'ABC', age: 18 }, { name: 'GeeksforGeeks', age: 30 }, { name: 'DEF', age: 50 } ] [ { name: 'GeeksforGeeks', age: 30 }, { name: 'DEF', age: 50 } ]3
đầu ra
[ { name: 'ABC', age: 18 }, { name: 'GeeksforGeeks', age: 30 }, { name: 'DEF', age: 50 } ]
Bây giờ chúng ta đã hiểu khái niệm tạo một mảng đối tượng, bây giờ chúng ta hãy xem cách chúng ta có thể lọc ra một số dữ liệu dựa trên yêu cầu của người dùng từ mảng đối tượng
Phương thức bộ lọc Javascript[]. Các điểm được sắp xếp theo thứ tự sau đây sẽ mô tả nhiệm vụ được minh họa ở trên của chúng tôi
- Để lọc ra nội dung từ mảng các đối tượng, trước tiên chúng ta sẽ sử dụng phương thức filter[] mà chúng ta sẽ áp dụng trên phần mảng ngoài cùng của mình
- Bên trong phương thức đó, chúng ta sẽ truyền một hàm sẽ thực thi trên tất cả các đối tượng có trong một mảng và để truy cập từng đối tượng đó, chúng ta sẽ sử dụng một phần tử có tên bất kỳ với mục đích truy cập các đối tượng có trong mảng đó
- Sau đó, dựa trên yêu cầu của người dùng, dữ liệu từ mảng đối tượng đó sẽ được lọc ra và có thể được hiển thị nếu được yêu cầu
ví dụ 1. Trong ví dụ này, chúng tôi sẽ triển khai một phương thức filter[] cơ bản sẽ lọc tuổi của đối tượng
Javascript
[ { name: 'ABC', age: 18 }, { name: 'GeeksforGeeks', age: 30 }, { name: 'DEF', age: 50 } ]9
[ { name: 'ABC', age: 18 }, { name: 'GeeksforGeeks', age: 30 }, { name: 'DEF', age: 50 } ]0
[ { name: 'ABC', age: 18 }, { name: 'GeeksforGeeks', age: 30 }, { name: 'DEF', age: 50 } ]1
[ { name: 'ABC', age: 18 }, { name: 'GeeksforGeeks', age: 30 }, { name: 'DEF', age: 50 } ]2
[ { name: 'ABC', age: 18 }, { name: 'GeeksforGeeks', age: 30 }, { name: 'DEF', age: 50 } ]3
[ { name: 'ABC', age: 18 }, { name: 'GeeksforGeeks', age: 30 }, { name: 'DEF', age: 50 } ]4
[ { name: 'ABC', age: 18 }, { name: 'GeeksforGeeks', age: 30 }, { name: 'DEF', age: 50 } ]0
[ { name: 'ABC', age: 18 }, { name: 'GeeksforGeeks', age: 30 }, { name: 'DEF', age: 50 } ]2____23
[ { name: 'ABC', age: 18 }, { name: 'GeeksforGeeks', age: 30 }, { name: 'DEF', age: 50 } ]3
[ { name: 'ABC', age: 18 }, { name: 'GeeksforGeeks', age: 30 }, { name: 'DEF', age: 50 } ]4
[ { name: 'ABC', age: 18 }, { name: 'GeeksforGeeks', age: 30 }, { name: 'DEF', age: 50 } ]2____23
[ { name: 'ABC', age: 18 }, { name: 'GeeksforGeeks', age: 30 }, { name: 'DEF', age: 50 } ]7____18
[ { name: 'ABC', age: 18 }, { name: 'GeeksforGeeks', age: 30 }, { name: 'DEF', age: 50 } ]0
[ { name: 'ABC', age: 18 }, { name: 'GeeksforGeeks', age: 30 }, { name: 'DEF', age: 50 } ] [ { name: 'GeeksforGeeks', age: 30 }, { name: 'DEF', age: 50 } ]0
[ { name: 'ABC', age: 18 }, { name: 'GeeksforGeeks', age: 30 }, { name: 'DEF', age: 50 } ]0
[ { name: 'ABC', age: 18 }, { name: 'GeeksforGeeks', age: 30 }, { name: 'DEF', age: 50 } ] [ { name: 'GeeksforGeeks', age: 30 }, { name: 'DEF', age: 50 } ]2
[ { name: 'ABC', age: 18 }, { name: 'GeeksforGeeks', age: 30 }, { name: 'DEF', age: 50 } ]0
[ { name: 'ABC', age: 18 }, { name: 'GeeksforGeeks', age: 30 }, { name: 'DEF', age: 50 } ]0
[ { name: 'ABC', age: 18 }, { name: 'GeeksforGeeks', age: 30 }, { name: 'DEF', age: 50 } ]95
[ { name: 'ABC', age: 18 }, { name: 'GeeksforGeeks', age: 30 }, { name: 'DEF', age: 50 } ]2____197
[ { name: 'ABC', age: 18 }, { name: 'GeeksforGeeks', age: 30 }, { name: 'DEF', age: 50 } ]0
[ { name: 'ABC', age: 18 }, { name: 'GeeksforGeeks', age: 30 }, { name: 'DEF', age: 50 } ]99
[ { name: 'ABC', age: 18 }, { name: 'GeeksforGeeks', age: 30 }, { name: 'DEF', age: 50 } ] [ { name: 'GeeksforGeeks', age: 30 }, { name: 'DEF', age: 50 } ]3
đầu ra
[ { name: 'ABC', age: 18 }, { name: 'GeeksforGeeks', age: 30 }, { name: 'DEF', age: 50 } ] [ { name: 'GeeksforGeeks', age: 30 }, { name: 'DEF', age: 50 } ]
ví dụ 2. Trong ví dụ này, chúng tôi sẽ sử dụng phương thức filter[] để lọc ra dữ liệu nhóm máu mà người dùng yêu cầu làm kết quả cuối cùng. Ngoài ra, chúng tôi sẽ sử dụng toán tử logic && bằng cách cung cấp cả hai điều kiện là độ tuổi phải lớn hơn 18 cũng như nhóm máu cần thiết là B+