Làm cách nào để lọc một mảng đối tượng trong javascript theo giá trị thuộc tính?

Phương thức

let bigCities = []; for (let i = 0; i < cities.length; i++) { if (cities[i].population > 3000000) { bigCities.push(cities[i]); } } console.log(bigCities);

Code language: JavaScript (javascript)
4 trả về một mảng mới với tất cả các phần tử thỏa mãn điều kiện trong hàm gọi lại được cung cấp. Do đó, bạn có thể sử dụng phương pháp này để lọc một mảng đối tượng theo giá trị của một thuộc tính cụ thể, chẳng hạn như theo cách sau

// ES5+
const employees = [
    { name: 'John', department: 'sales' },
    { name: 'Wayne', department: 'marketing' },
    { name: 'David', department: 'IT' },
    { name: 'Bruce', department: 'marketing' },
];

const filtered = employees.filter(function (emp) {
    return emp.department === 'marketing'
});

console.log(filtered);
/* [
    {name: "Wayne", department: "marketing"},
    {name: "Bruce", department: "marketing"}
] */

Nếu không tìm thấy kết quả khớp thì phương thức

let bigCities = []; for (let i = 0; i < cities.length; i++) { if (cities[i].population > 3000000) { bigCities.push(cities[i]); } } console.log(bigCities);

Code language: JavaScript (javascript)
4 sẽ trả về một mảng trống

Với arrow functions của ES6, bạn có thể rút gọn cú pháp một chút, ví dụ như vậy

// ES6+
// ...
const filtered = employees.filter((emp) => emp.department === 'marketing');
// ...

Trong ES6+, bạn cũng có thể giải nén trực tiếp đối tượng trong đối số của hàm gọi lại, ví dụ như vậy

// ES6+
// ...
const filtered = employees.filter(({ department }) => department === 'marketing');
// ...

Sử dụng vòng lặp

Nếu bạn không thể hỗ trợ ES5, thì bạn chỉ cần sử dụng một vòng lặp (chẳng hạn như vòng lặp

let bigCities = []; for (let i = 0; i < cities.length; i++) { if (cities[i].population > 3000000) { bigCities.push(cities[i]); } } console.log(bigCities);

Code language: JavaScript (javascript)
6) để lặp lại mảng đối tượng và điền vào một mảng mới các phần tử mà bạn muốn giữ lại. Ví dụ.

const employees = [
    { name: 'John', department: 'sales' },
    { name: 'Wayne', department: 'marketing' },
    { name: 'David', department: 'IT' },
    { name: 'Bruce', department: 'marketing' },
];

const match = [];

for (let i = 0; i < employees.length; i++) {
    if (employees[i].department === 'marketing') {
        match.push(employees[i]);
    }
}

console.log(match);
/* [
    {name: "Wayne", department: "marketing"},
    {name: "Bruce", department: "marketing"}
] */

Nếu không tìm thấy kết quả khớp thì "______87" sẽ là một mảng trống


Hy vọng bạn tìm thấy bài viết này hữu ích. Nó được xuất bản vào ngày 05 tháng 6 năm 2021. Hãy thể hiện tình yêu và sự ủng hộ của bạn bằng cách chia sẻ bài đăng này

Mảng JavaScript có phương thức

let bigCities = []; for (let i = 0; i < cities.length; i++) { if (cities[i].population > 3000000) { bigCities.push(cities[i]); } } console.log(bigCities);

Code language: JavaScript (javascript)
8 cho phép bạn tạo một mảng mới chỉ chứa các phần tử vượt qua một bài kiểm tra nhất định. Nói cách khác,

let bigCities = []; for (let i = 0; i < cities.length; i++) { if (cities[i].population > 3000000) { bigCities.push(cities[i]); } } console.log(bigCities);

Code language: JavaScript (javascript)
8 cung cấp cho bạn một mảng mới chỉ chứa các phần tử bạn cần

Phương thức

let bigCities = []; for (let i = 0; i < cities.length; i++) { if (cities[i].population > 3000000) { bigCities.push(cities[i]); } } console.log(bigCities);

Code language: JavaScript (javascript)
8 nhận một tham số gọi lại và trả về một mảng chứa tất cả các giá trị mà hàm gọi lại trả về

let cities = [ {name: 'Los Angeles', population: 3792621}, {name: 'New York', population: 8175133}, {name: 'Chicago', population: 2695598}, {name: 'Houston', population: 2099451}, {name: 'Philadelphia', population: 1526006} ];

Code language: JavaScript (javascript)
1 cho. Điều đó giúp dễ dàng sử dụng để lọc một mảng đối tượng. Ví dụ: đưa ra một danh sách các ký tự, đây là cách bạn có thể tìm thấy tất cả các ký tự có thuộc tính

let cities = [ {name: 'Los Angeles', population: 3792621}, {name: 'New York', population: 8175133}, {name: 'Chicago', population: 2695598}, {name: 'Houston', population: 2099451}, {name: 'Philadelphia', population: 1526006} ];

Code language: JavaScript (javascript)
2 là

let cities = [ {name: 'Los Angeles', population: 3792621}, {name: 'New York', population: 8175133}, {name: 'Chicago', population: 2695598}, {name: 'Houston', population: 2099451}, {name: 'Philadelphia', population: 1526006} ];

Code language: JavaScript (javascript)
3

const characters = [
  { name: 'Batman', team: 'Justice League' },
  { name: 'Hulk', team: 'Avengers' },
  { name: 'Flash', team: 'Justice League' },
  { name: 'Iron Man', team: 'Avengers' },
  { name: 'Deadpool', team: 'X-Force' }
];

const avengers = characters.filter(character => character.team === 'Avengers');

Các cuộc gọi lại bộ lọc thường sử dụng các chức năng mũi tên vì các cuộc gọi lại bộ lọc thường là một lớp lót

Gọi lại bộ lọc có thể tinh vi tùy ý, miễn là nó đồng bộ. Ví dụ: giả sử bạn có một danh sách các nhân vật trong Star Trek và bạn chỉ muốn lấy các nhân vật đã xuất hiện trong Star Trek. Thế hệ tiếp theo. Đây là cách bạn có thể sử dụng

let cities = [ {name: 'Los Angeles', population: 3792621}, {name: 'New York', population: 8175133}, {name: 'Chicago', population: 2695598}, {name: 'Houston', population: 2099451}, {name: 'Philadelphia', population: 1526006} ];

Code language: JavaScript (javascript)
4 để lọc một mảng các ký tự cho rằng thuộc tính

let cities = [ {name: 'Los Angeles', population: 3792621}, {name: 'New York', population: 8175133}, {name: 'Chicago', population: 2695598}, {name: 'Houston', population: 2099451}, {name: 'Philadelphia', population: 1526006} ];

Code language: JavaScript (javascript)
5 là một mảng

Tóm lược. trong hướng dẫn này, bạn sẽ học cách sử dụng phương thức Array

let bigCities = []; for (let i = 0; i < cities.length; i++) { if (cities[i].population > 3000000) { bigCities.push(cities[i]); } } console.log(bigCities);

Code language: JavaScript (javascript)
1 của JavaScript để lọc các phần tử trong một mảng

Giới thiệu về phương thức mảng JavaScript let bigCities = []; for (let i = 0; i < cities.length; i++) { if (cities[i].population > 3000000) { bigCities.push(cities[i]); } } console.log(bigCities);Code language: JavaScript (javascript)1

Một trong những nhiệm vụ phổ biến nhất khi làm việc với mảng là tạo một mảng mới chứa một tập hợp con các phần tử của mảng ban đầu

Giả sử bạn có một mảng các đối tượng thành phố trong đó mỗi đối tượng chứa hai thuộc tính.

let bigCities = []; for (let i = 0; i < cities.length; i++) { if (cities[i].population > 3000000) { bigCities.push(cities[i]); } } console.log(bigCities);

Code language: JavaScript (javascript)
3 và

let bigCities = []; for (let i = 0; i < cities.length; i++) { if (cities[i].population > 3000000) { bigCities.push(cities[i]); } } console.log(bigCities);

Code language: JavaScript (javascript)
4

let cities = [ {name: 'Los Angeles', population: 3792621}, {name: 'New York', population: 8175133}, {name: 'Chicago', population: 2695598}, {name: 'Houston', population: 2099451}, {name: 'Philadelphia', population: 1526006} ];

Code language: JavaScript (javascript)

Để tìm thành phố có dân số lớn hơn 3 triệu người, bạn thường lặp qua các phần tử mảng bằng vòng lặp for và kiểm tra xem giá trị của thuộc tính

let bigCities = []; for (let i = 0; i < cities.length; i++) { if (cities[i].population > 3000000) { bigCities.push(cities[i]); } } console.log(bigCities);

Code language: JavaScript (javascript)
4 có thỏa mãn điều kiện hay không, như sau

let bigCities = []; for (let i = 0; i < cities.length; i++) { if (cities[i].population > 3000000) { bigCities.push(cities[i]); } } console.log(bigCities);

Code language: JavaScript (javascript)

đầu ra

// ES6+
// ...
const filtered = employees.filter((emp) => emp.department === 'marketing');
// ...
2

Mảng JavaScript cung cấp phương thức

let bigCities = []; for (let i = 0; i < cities.length; i++) { if (cities[i].population > 3000000) { bigCities.push(cities[i]); } } console.log(bigCities);

Code language: JavaScript (javascript)
1 cho phép bạn thực hiện tác vụ này theo cách ngắn gọn và rõ ràng hơn

Ví dụ sau trả về kết quả tương tự như ví dụ trên

// ES6+
// ...
const filtered = employees.filter((emp) => emp.department === 'marketing');
// ...
4

Trong ví dụ này, chúng ta gọi phương thức

let bigCities = []; for (let i = 0; i < cities.length; i++) { if (cities[i].population > 3000000) { bigCities.push(cities[i]); } } console.log(bigCities);

Code language: JavaScript (javascript)
1 của đối tượng mảng

let bigCities = []; for (let i = 0; i < cities.length; i++) { if (cities[i].population > 3000000) { bigCities.push(cities[i]); } } console.log(bigCities);

Code language: JavaScript (javascript)
8 và truyền một hàm kiểm tra từng phần tử

Bên trong hàm, chúng tôi kiểm tra xem

let bigCities = []; for (let i = 0; i < cities.length; i++) { if (cities[i].population > 3000000) { bigCities.push(cities[i]); } } console.log(bigCities);

Code language: JavaScript (javascript)
4 của mỗi thành phố trong mảng có lớn hơn 3 triệu không. Nếu đúng như vậy, hàm trả về
// ES6+
// ...
const filtered = employees.filter((emp) => emp.department === 'marketing');
// ...
20 hoặc
// ES6+
// ...
const filtered = employees.filter((emp) => emp.department === 'marketing');
// ...
21 nếu không.  

Phương thức

let bigCities = []; for (let i = 0; i < cities.length; i++) { if (cities[i].population > 3000000) { bigCities.push(cities[i]); } } console.log(bigCities);

Code language: JavaScript (javascript)
1 bao gồm các phần tử duy nhất trong mảng kết quả nếu chúng thỏa mãn kiểm tra trong hàm gọi lại

Bắt đầu với ES6, bạn có thể sử dụng chức năng mũi tên để làm cho nó ngắn gọn hơn

// ES6+
// ...
const filtered = employees.filter(({ department }) => department === 'marketing');
// ...
1

Chi tiết về phương thức JavaScript Array filter()

Sau đây minh họa cú pháp của phương thức

let bigCities = []; for (let i = 0; i < cities.length; i++) { if (cities[i].population > 3000000) { bigCities.push(cities[i]); } } console.log(bigCities);

Code language: JavaScript (javascript)
1

// ES6+
// ...
const filtered = employees.filter(({ department }) => department === 'marketing');
// ...
3

Phương thức

let bigCities = []; for (let i = 0; i < cities.length; i++) { if (cities[i].population > 3000000) { bigCities.push(cities[i]); } } console.log(bigCities);

Code language: JavaScript (javascript)
1 tạo một mảng mới với tất cả các phần tử vượt qua bài kiểm tra được thực hiện bởi hàm
// ES6+
// ...
const filtered = employees.filter((emp) => emp.department === 'marketing');
// ...
25

Bên trong, phương thức

let bigCities = []; for (let i = 0; i < cities.length; i++) { if (cities[i].population > 3000000) { bigCities.push(cities[i]); } } console.log(bigCities);

Code language: JavaScript (javascript)
1 lặp lại từng phần tử của mảng và chuyển từng phần tử vào hàm
// ES6+
// ...
const filtered = employees.filter((emp) => emp.department === 'marketing');
// ...
27. Nếu hàm
// ES6+
// ...
const filtered = employees.filter((emp) => emp.department === 'marketing');
// ...
27 trả về
// ES6+
// ...
const filtered = employees.filter((emp) => emp.department === 'marketing');
// ...
20, thì hàm này bao gồm phần tử trong mảng trả về

Phương thức

let bigCities = []; for (let i = 0; i < cities.length; i++) { if (cities[i].population > 3000000) { bigCities.push(cities[i]); } } console.log(bigCities);

Code language: JavaScript (javascript)
1 chấp nhận hai đối số được đặt tên. một hàm
// ES6+
// ...
const filtered = employees.filter((emp) => emp.department === 'marketing');
// ...
27 và một đối tượng tùy chọn

Giống như các phương thức lặp khác của đối tượng Array, chẳng hạn như

// ES6+
// ...
const filtered = employees.filter((emp) => emp.department === 'marketing');
// ...
42
// ES6+
// ...
const filtered = employees.filter((emp) => emp.department === 'marketing');
// ...
43
// ES6+
// ...
const filtered = employees.filter((emp) => emp.department === 'marketing');
// ...
44 và
// ES6+
// ...
const filtered = employees.filter((emp) => emp.department === 'marketing');
// ...
45, hàm
// ES6+
// ...
const filtered = employees.filter((emp) => emp.department === 'marketing');
// ...
27 có dạng sau

const employees = [
    { name: 'John', department: 'sales' },
    { name: 'Wayne', department: 'marketing' },
    { name: 'David', department: 'IT' },
    { name: 'Bruce', department: 'marketing' },
];

const match = [];

for (let i = 0; i < employees.length; i++) {
    if (employees[i].department === 'marketing') {
        match.push(employees[i]);
    }
}

console.log(match);
/* [
    {name: "Wayne", department: "marketing"},
    {name: "Bruce", department: "marketing"}
] */
7

Hàm

// ES6+
// ...
const filtered = employees.filter((emp) => emp.department === 'marketing');
// ...
27 nhận ba đối số

  • Đối số
    // ES6+
    // ...
    const filtered = employees.filter((emp) => emp.department === 'marketing');
    // ...
    
    48 là phần tử hiện tại trong mảng đang được xử lý bởi hàm
    // ES6+
    // ...
    const filtered = employees.filter((emp) => emp.department === 'marketing');
    // ...
    
    27
  • // ES6+
    // ...
    const filtered = employees.filter(({ department }) => department === 'marketing');
    // ...
    
    10 của
    // ES6+
    // ...
    const filtered = employees.filter((emp) => emp.department === 'marketing');
    // ...
    
    48 đang được xử lý bởi hàm
    // ES6+
    // ...
    const filtered = employees.filter((emp) => emp.department === 'marketing');
    // ...
    
    27
  • Đối tượng
    // ES6+
    // ...
    const filtered = employees.filter(({ department }) => department === 'marketing');
    // ...
    
    13 đang được duyệt qua

Các đối số

// ES6+
// ...
const filtered = employees.filter(({ department }) => department === 'marketing');
// ...
10 và
// ES6+
// ...
const filtered = employees.filter(({ department }) => department === 'marketing');
// ...
13 là tùy chọn

Đối số

// ES6+
// ...
const filtered = employees.filter(({ department }) => department === 'marketing');
// ...
16 của phương thức

let bigCities = []; for (let i = 0; i < cities.length; i++) { if (cities[i].population > 3000000) { bigCities.push(cities[i]); } } console.log(bigCities);

Code language: JavaScript (javascript)
1 là tùy chọn. Nếu bạn chuyển giá trị
// ES6+
// ...
const filtered = employees.filter(({ department }) => department === 'marketing');
// ...
18, bạn có thể tham chiếu giá trị đó bằng cách sử dụng từ khóa
// ES6+
// ...
const filtered = employees.filter(({ department }) => department === 'marketing');
// ...
18 bên trong hàm
// ES6+
// ...
const filtered = employees.filter((emp) => emp.department === 'marketing');
// ...
27

Điều quan trọng cần lưu ý là phương thức

let bigCities = []; for (let i = 0; i < cities.length; i++) { if (cities[i].population > 3000000) { bigCities.push(cities[i]); } } console.log(bigCities);

Code language: JavaScript (javascript)
1 không thay đổi mảng ban đầu

Thêm các ví dụ về phương thức Mảng JavaScript let bigCities = []; for (let i = 0; i < cities.length; i++) { if (cities[i].population > 3000000) { bigCities.push(cities[i]); } } console.log(bigCities);Code language: JavaScript (javascript)1

Vì phương thức

let bigCities = []; for (let i = 0; i < cities.length; i++) { if (cities[i].population > 3000000) { bigCities.push(cities[i]); } } console.log(bigCities);

Code language: JavaScript (javascript)
1 trả về một mảng mới, nên bạn có thể xâu chuỗi kết quả bằng các phương thức mảng khác, chẳng hạn như
// ES6+
// ...
const filtered = employees.filter(({ department }) => department === 'marketing');
// ...
34 và
// ES6+
// ...
const filtered = employees.filter(({ department }) => department === 'marketing');
// ...
35

Ví dụ: phần sau minh họa cách xâu chuỗi ba phương thức.

// ES6+
// ...
const filtered = employees.filter(({ department }) => department === 'marketing');
// ...
36 và
// ES6+
// ...
const filtered = employees.filter(({ department }) => department === 'marketing');
// ...
37

let bigCities = []; for (let i = 0; i < cities.length; i++) { if (cities[i].population > 3000000) { bigCities.push(cities[i]); } } console.log(bigCities);

Code language: JavaScript (javascript)
9

đầu ra

let bigCities = []; for (let i = 0; i < cities.length; i++) { if (cities[i].population > 3000000) { bigCities.push(cities[i]); } } console.log(bigCities);

Code language: JavaScript (javascript)
0

Làm thế nào nó hoạt động

  • Đầu tiên, lọc các thành phố có dân số dưới 3 triệu người bằng phương pháp

    let bigCities = []; for (let i = 0; i < cities.length; i++) { if (cities[i].population > 3000000) { bigCities.push(cities[i]); } } console.log(bigCities);

    Code language: JavaScript (javascript)
    1
  • Thứ hai, sắp xếp các thành phố kết quả theo dân số theo thứ tự giảm dần bằng phương pháp
    // ES6+
    // ...
    const filtered = employees.filter(({ department }) => department === 'marketing');
    // ...
    
    39
  • Thứ ba, xuất phần tử mảng ra bàn điều khiển bằng phương thức
    // ES6+
    // ...
    const filtered = employees.filter((emp) => emp.department === 'marketing');
    // ...
    
    44

Ví dụ sau minh họa việc sử dụng đối số

const employees = [
    { name: 'John', department: 'sales' },
    { name: 'Wayne', department: 'marketing' },
    { name: 'David', department: 'IT' },
    { name: 'Bruce', department: 'marketing' },
];

const match = [];

for (let i = 0; i < employees.length; i++) {
    if (employees[i].department === 'marketing') {
        match.push(employees[i]);
    }
}

console.log(match);
/* [
    {name: "Wayne", department: "marketing"},
    {name: "Bruce", department: "marketing"}
] */
71 chỉ định một đối tượng có thể được tham chiếu trong hàm
// ES6+
// ...
const filtered = employees.filter((emp) => emp.department === 'marketing');
// ...
25 bằng cách sử dụng từ khóa
// ES6+
// ...
const filtered = employees.filter(({ department }) => department === 'marketing');
// ...
18

let bigCities = []; for (let i = 0; i < cities.length; i++) { if (cities[i].population > 3000000) { bigCities.push(cities[i]); } } console.log(bigCities);

Code language: JavaScript (javascript)
7

đầu ra

let bigCities = []; for (let i = 0; i < cities.length; i++) { if (cities[i].population > 3000000) { bigCities.push(cities[i]); } } console.log(bigCities);

Code language: JavaScript (javascript)
0

Làm thế nào nó hoạt động

  • Trước tiên, hãy xác định hàm
    const employees = [
        { name: 'John', department: 'sales' },
        { name: 'Wayne', department: 'marketing' },
        { name: 'David', department: 'IT' },
        { name: 'Bruce', department: 'marketing' },
    ];
    
    const match = [];
    
    for (let i = 0; i < employees.length; i++) {
        if (employees[i].department === 'marketing') {
            match.push(employees[i]);
        }
    }
    
    console.log(match);
    /* [
        {name: "Wayne", department: "marketing"},
        {name: "Bruce", department: "marketing"}
    ] */
    
    74 để kiểm tra xem đối số của nó có phải là một số hay không và nằm trong phạm vi được chỉ định bởi các thuộc tính
    const employees = [
        { name: 'John', department: 'sales' },
        { name: 'Wayne', department: 'marketing' },
        { name: 'David', department: 'IT' },
        { name: 'Bruce', department: 'marketing' },
    ];
    
    const match = [];
    
    for (let i = 0; i < employees.length; i++) {
        if (employees[i].department === 'marketing') {
            match.push(employees[i]);
        }
    }
    
    console.log(match);
    /* [
        {name: "Wayne", department: "marketing"},
        {name: "Bruce", department: "marketing"}
    ] */
    
    75 và
    const employees = [
        { name: 'John', department: 'sales' },
        { name: 'Wayne', department: 'marketing' },
        { name: 'David', department: 'IT' },
        { name: 'Bruce', department: 'marketing' },
    ];
    
    const match = [];
    
    for (let i = 0; i < employees.length; i++) {
        if (employees[i].department === 'marketing') {
            match.push(employees[i]);
        }
    }
    
    console.log(match);
    /* [
        {name: "Wayne", department: "marketing"},
        {name: "Bruce", department: "marketing"}
    ] */
    
    76 của một đối tượng
  • Tiếp theo, xác định một mảng dữ liệu hỗn hợp có chứa số, chuỗi và không xác định
  • Sau đó, định nghĩa đối tượng
    const employees = [
        { name: 'John', department: 'sales' },
        { name: 'Wayne', department: 'marketing' },
        { name: 'David', department: 'IT' },
        { name: 'Bruce', department: 'marketing' },
    ];
    
    const match = [];
    
    for (let i = 0; i < employees.length; i++) {
        if (employees[i].department === 'marketing') {
            match.push(employees[i]);
        }
    }
    
    console.log(match);
    /* [
        {name: "Wayne", department: "marketing"},
        {name: "Bruce", department: "marketing"}
    ] */
    
    77 với hai thuộc tính
    const employees = [
        { name: 'John', department: 'sales' },
        { name: 'Wayne', department: 'marketing' },
        { name: 'David', department: 'IT' },
        { name: 'Bruce', department: 'marketing' },
    ];
    
    const match = [];
    
    for (let i = 0; i < employees.length; i++) {
        if (employees[i].department === 'marketing') {
            match.push(employees[i]);
        }
    }
    
    console.log(match);
    /* [
        {name: "Wayne", department: "marketing"},
        {name: "Bruce", department: "marketing"}
    ] */
    
    75 và
    const employees = [
        { name: 'John', department: 'sales' },
        { name: 'Wayne', department: 'marketing' },
        { name: 'David', department: 'IT' },
        { name: 'Bruce', department: 'marketing' },
    ];
    
    const match = [];
    
    for (let i = 0; i < employees.length; i++) {
        if (employees[i].department === 'marketing') {
            match.push(employees[i]);
        }
    }
    
    console.log(match);
    /* [
        {name: "Wayne", department: "marketing"},
        {name: "Bruce", department: "marketing"}
    ] */
    
    76
  • Sau đó, gọi các phương thức

    let bigCities = []; for (let i = 0; i < cities.length; i++) { if (cities[i].population > 3000000) { bigCities.push(cities[i]); } } console.log(bigCities);

    Code language: JavaScript (javascript)
    1 của mảng

    let bigCities = []; for (let i = 0; i < cities.length; i++) { if (cities[i].population > 3000000) { bigCities.push(cities[i]); } } console.log(bigCities);

    Code language: JavaScript (javascript)
    91 và truyền vào hàm
    const employees = [
        { name: 'John', department: 'sales' },
        { name: 'Wayne', department: 'marketing' },
        { name: 'David', department: 'IT' },
        { name: 'Bruce', department: 'marketing' },
    ];
    
    const match = [];
    
    for (let i = 0; i < employees.length; i++) {
        if (employees[i].department === 'marketing') {
            match.push(employees[i]);
        }
    }
    
    console.log(match);
    /* [
        {name: "Wayne", department: "marketing"},
        {name: "Bruce", department: "marketing"}
    ] */
    
    74 và đối tượng
    const employees = [
        { name: 'John', department: 'sales' },
        { name: 'Wayne', department: 'marketing' },
        { name: 'David', department: 'IT' },
        { name: 'Bruce', department: 'marketing' },
    ];
    
    const match = [];
    
    for (let i = 0; i < employees.length; i++) {
        if (employees[i].department === 'marketing') {
            match.push(employees[i]);
        }
    }
    
    console.log(match);
    /* [
        {name: "Wayne", department: "marketing"},
        {name: "Bruce", department: "marketing"}
    ] */
    
    77. Bởi vì chúng ta truyền vào đối tượng
    const employees = [
        { name: 'John', department: 'sales' },
        { name: 'Wayne', department: 'marketing' },
        { name: 'David', department: 'IT' },
        { name: 'Bruce', department: 'marketing' },
    ];
    
    const match = [];
    
    for (let i = 0; i < employees.length; i++) {
        if (employees[i].department === 'marketing') {
            match.push(employees[i]);
        }
    }
    
    console.log(match);
    /* [
        {name: "Wayne", department: "marketing"},
        {name: "Bruce", department: "marketing"}
    ] */
    
    77, bên trong hàm
    const employees = [
        { name: 'John', department: 'sales' },
        { name: 'Wayne', department: 'marketing' },
        { name: 'David', department: 'IT' },
        { name: 'Bruce', department: 'marketing' },
    ];
    
    const match = [];
    
    for (let i = 0; i < employees.length; i++) {
        if (employees[i].department === 'marketing') {
            match.push(employees[i]);
        }
    }
    
    console.log(match);
    /* [
        {name: "Wayne", department: "marketing"},
        {name: "Bruce", department: "marketing"}
    ] */
    
    74, từ khóa
    // ES6+
    // ...
    const filtered = employees.filter(({ department }) => department === 'marketing');
    // ...
    
    18 tham chiếu đến đối tượng
    const employees = [
        { name: 'John', department: 'sales' },
        { name: 'Wayne', department: 'marketing' },
        { name: 'David', department: 'IT' },
        { name: 'Bruce', department: 'marketing' },
    ];
    
    const match = [];
    
    for (let i = 0; i < employees.length; i++) {
        if (employees[i].department === 'marketing') {
            match.push(employees[i]);
        }
    }
    
    console.log(match);
    /* [
        {name: "Wayne", department: "marketing"},
        {name: "Bruce", department: "marketing"}
    ] */
    
    77
  • Cuối cùng, hiển thị mảng kết quả trong bảng điều khiển

Trong hướng dẫn này, bạn đã học cách sử dụng phương thức Array

let bigCities = []; for (let i = 0; i < cities.length; i++) { if (cities[i].population > 3000000) { bigCities.push(cities[i]); } } console.log(bigCities);

Code language: JavaScript (javascript)
1 của JavaScript để lọc các phần tử trong một mảng dựa trên phép thử được cung cấp bởi hàm gọi lại

Làm cách nào để tìm một đối tượng theo giá trị thuộc tính trong một mảng các đối tượng JavaScript?

Trả lời. Sử dụng phương thức find() . Phương thức find() trả về phần tử đầu tiên trong mảng đã cho thỏa mãn chức năng kiểm tra được cung cấp. Nếu không có giá trị nào thỏa mãn chức năng kiểm tra, undefined được trả về.

Cách lấy giá trị cụ thể từ mảng trong JavaScript?

Nếu bạn cần chỉ mục của phần tử được tìm thấy trong mảng, hãy sử dụng find Index()
Nếu bạn cần tìm chỉ mục của một giá trị, hãy sử dụng indexOf(). .
Nếu bạn cần tìm xem một giá trị có tồn tại trong một mảng hay không, hãy sử dụng bao gồm(). .
Nếu bạn cần tìm xem có phần tử nào thỏa mãn chức năng kiểm tra được cung cấp hay không, hãy sử dụng some()