Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> JavaScript

Tìm kiếm phần tử trong mảng JavaScript

JavaScript cung cấp nhiều hàm để tìm phần tử trong mảng. Bắt đầu với cơ bản nhất. indexOf duyệt toàn mảng và trả về chỉ mục nếu tìm thấy, ngược lại trả về -1. Ví dụ:

Ví dụ

let people = ["Harry", "Martha", "John", "Sam"]; console.log(people.indexOf("John")) console.log(people.indexOf("Jim"))

Kết quả

2 -1

Có các hàm phức tạp hơn để tìm kiếm mạnh mẽ hơn. Xem find(). Trả về đối tượng đầu tiên khớp điều kiện callback. Ví dụ:

Ví dụ

let people = [{    name: 'Agnes',    age: 25 }, {    name: 'Richard',    age: 21 }, {    name: 'Zoe',    age: 35 }]; let personNameStartsWithR = people.find(person => person.name[0] === 'R'); console.log(personNameStartsWithR)

Kết quả

{ name: 'Richard', age: 21 }

Để tìm chỉ mục, dùng findIndex:

Ví dụ

let people = [{    name: 'Agnes',    age: 25 }, {    name: 'Richard',    age: 21 }, {    name: 'Zoe',    age: 35 }]; let personNameStartsWithR = people.findIndex(person => person.name[0] === 'R'); console.log(personNameStartsWithR)

Kết quả

1

find và findIndex nhận callback với tham số: element, index, array. Chỉ trả về lần xuất hiện đầu tiên. indexOf có tham số thứ 2 fromIndex để tiếp tục tìm từ vị trí đó:

Ví dụ

let people = ["Harry", "Martha", "John", "Sam", "Martha"]; console.log(people.indexOf("Martha")); console.log(people.indexOf("Martha", 3))

Kết quả

1 4