Mảng bộ lọc JavaScript của các đối tượng nếu khóa tồn tại

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+

Làm cách nào để lọc mảng đối tượng dựa trên JavaScript giá trị chính?

Người dùng có thể sử dụng phương thức filter[] cho mảng trong JavaScript chứ không phải cho đối tượng. Vì vậy, có các phương pháp thay thế để lọc đối tượng bằng các phím. Người dùng có thể sử dụng Đối tượng. keys[] để lọc các đối tượng JavaScript, sử dụng hàm reduce[] và tích lũy các khóa đã lọc .

Làm cách nào để kiểm tra xem khóa có tồn tại trong đối tượng mảng JavaScript không?

Sử dụng hàm hasOwnProperty[] . Hàm này lấy khóa của đối tượng làm tham số và trả về kết quả Boolean tương ứng.

Bạn có thể lọc một mảng đối tượng trong JavaScript không?

Người ta có thể sử dụng hàm filter[] trong JavaScript để lọc mảng đối tượng dựa trên thuộc tính . Hàm filter[] sẽ trả về một mảng mới chứa tất cả các phần tử của mảng thỏa mãn điều kiện đã cho. Nếu không có phần tử nào vượt qua điều kiện, nó sẽ trả về một mảng trống.

Làm cách nào để kiểm tra xem một thuộc tính có tồn tại trong một mảng đối tượng JavaScript không?

JavaScript cung cấp cho bạn ba cách phổ biến để kiểm tra xem một thuộc tính có tồn tại trong một đối tượng hay không. .
Sử dụng phương thức hasOwnProperty[]
Sử dụng toán tử in
So sánh tài sản với không xác định

Chủ Đề