Mảng là một trong những cấu trúc dữ liệu được sử dụng rộng rãi nhất trong Khoa học máy tính. Khi xử lý một danh sách các mục [mảng], chúng ta thường được yêu cầu tìm kiếm một giá trị cụ thể trong danh sách. JavaScript chứa một vài phương thức tích hợp để kiểm tra xem một mảng có một giá trị hoặc đối tượng cụ thể hay không
Trong bài viết này, chúng ta sẽ xem xét cách kiểm tra xem một mảng có bao gồm/chứa một giá trị hoặc phần tử trong JavaScript hay không
Kiểm tra mảng các giá trị nguyên thủy Bao gồm một giá trị
Mảng. chức năng bao gồm []
Cách đơn giản nhất để kiểm tra giá trị nguyên thủy trong một mảng là sử dụng phương thức
Element is not present
8Ví dụ: hãy kiểm tra xem mảng động vật có chứa biểu tượng cảm xúc chó và mèo hay không
Hàm trả về một giá trị boolean, biểu thị sự hiện diện hoặc thiếu của giá trị đó
Mảng. hàm indexOf[]
Trong trường hợp chúng tôi cần vị trí chính xác của phần tử mà chúng tôi đang tìm kiếm, chúng tôi có thể sử dụng phương pháp
Element is not present
9, tìm kiếm Element is not present
0 trong mảng đã chỉ định và trả về chỉ mục của lần xuất hiện đầu tiên và Element is not present
1 nếu mảng không chứa Element is not present
0Ví dụ: chúng ta có thể tìm kiếm lần xuất hiện đầu tiên của điểm trong một mảng chứa điểm
Trong trường hợp đầu tiên, phần tử có mặt và vị trí của nó được trả về. Trong trường hợp thứ hai, giá trị trả về biểu thị rằng phần tử không có mặt
Chúng ta có thể sử dụng điều này để thay đổi dòng mã một cách dễ dàng
let grades = ["B", "D", "C", "A"]
if [grades.indexOf["F"] >= 0] {
console.log["Element is present"];
} else {
console.log["Element is not present"];
}
Nếu chúng tôi vượt qua trong
Element is not present
3, thông báo đầy đủ sẽ được inElement is not present
Kiểm tra xem Mảng đối tượng có bao gồm đối tượng không
hàm some[]
Khi tìm kiếm một đối tượng,
Element is not present
8 kiểm tra xem tham chiếu đối tượng được cung cấp có khớp với đối tượng trong mảng không. Đây hiếm khi là điều chúng ta muốn, bởi vì các đối tượng có thể có các trường giống hệt nhau với các giá trị tương ứng nhưng các tham chiếu khác nhauChúng ta có thể sử dụng phương thức
Element is not present
0 để tìm kiếm theo nội dung của đối tượng. Phương thức Element is not present
0 nhận một đối số chấp nhận một hàm gọi lại, hàm này được thực thi một lần cho mỗi giá trị trong mảng cho đến khi tìm thấy phần tử đáp ứng điều kiện do hàm Element is not present
2 đặt và trả về Element is not present
3Hãy xem hướng dẫn thực hành, thực tế của chúng tôi để học Git, với các phương pháp hay nhất, tiêu chuẩn được ngành chấp nhận và bao gồm bảng gian lận. Dừng các lệnh Git trên Google và thực sự tìm hiểu nó
Hãy xem xét hoạt động của
Element is not present
0 để hiểu rõ hơnlet animals = [{name: "dog"}, {name: "snake"}, {name: "monkey"}, {name: "donkey"}]
let element = {name: "monkey"}
animals.some[animal => animal.name === element.name]
Hàm gọi lại trả về
Element is not present
5 cho hai trường hợp đầu tiên, nhưng trả về Element is not present
3 cho phần tử thứ ba, khi tên khớp. Sau đó, Element is not present
0 tạm dừng thực thi và trả về Element is not present
3Sự kết luận
Trong bài viết này, chúng ta đã tìm hiểu một số cách để kiểm tra xem một mảng có chứa giá trị hay không trong JavaScript
Chúng tôi đã đề cập đến hàm
Element is not present
8, trả về giá trị boolean nếu giá trị đó hiện diện. Hàm let animals = [{name: "dog"}, {name: "snake"}, {name: "monkey"}, {name: "donkey"}]
let element = {name: "monkey"}
animals.some[animal => animal.name === element.name]
0 trả về chỉ mục của một giá trị nếu có và Element is not present
1 nếu không cóCuối cùng, đối với các đối tượng, hàm
Element is not present
0 giúp chúng ta tìm kiếm sự hiện diện của đối tượng dựa trên nội dung của chúng Trong hướng dẫn này, chúng ta sẽ học cách kiểm tra xem một mảng có bao gồm một đối tượng hay không. Mảng thực chứa các giá trị có cùng kiểu dữ liệu. Trong JavaScript, mảng được thay thế bằng danh sách, bao gồm các giá trị với bất kỳ kiểu dữ liệu nào cho dù người dùng có thể thêm các đối tượng bên trong danh sách bằng số và chuỗi
Vì vậy, các lập trình viên đôi khi cần tìm hiểu xem mảng có chứa các đối tượng hay không. Người lập trình có thể truy cập các thuộc tính của đối tượng và thực hiện một số thao tác nếu mảng chứa đối tượng
Ở đây, chúng ta có các phương thức khác nhau để kiểm tra xem mảng có chứa đối tượng hay không
Sử dụng mảng. phương thức bao gồm []
Sử dụng mảng. phương thức some[]
Sử dụng mảng. phương thức bao gồm []
Mảng. Phương thức bao gồm [] hữu ích nhất khi chúng ta cần kiểm tra xem mảng có bao gồm giá trị cụ thể trong danh sách hay không trong JavaScript. Chúng ta có thể tìm thấy bất kỳ thực thể đối tượng cụ thể nào bằng phương pháp này. Chúng ta sẽ truyền một đối tượng làm tham số của mảng. bao gồm [] và nếu mảng chứa đối tượng có cùng khóa và giá trị, thì nó trả về true
cú pháp
Người dùng có thể làm theo cú pháp dưới đây để sử dụng mảng. phương thức bao gồm []
Element is not present
4Thông số
mảng. phương thức bao gồm [] chứa hai tham số
đối tượng - Nó là một loại thực thể của đối tượng mà bạn muốn tìm trong mảng
started_position - Đó là vị trí bắt đầu dựa trên chỉ mục 0 trong mảng, từ vị trí mà người dùng muốn bắt đầu tìm đối tượng trong mảng
Thí dụ
Trong ví dụ dưới đây, chúng tôi đã tạo một đối tượng và một mảng các chuỗi. Ngoài ra, nó bao gồm các đối tượng bên trong mảng. Chúng tôi đang tìm đối tượng trong mảng bằng cách bắt đầu các vị trí khác nhau bằng cách sử dụng mảng. phương thức bao gồm []
Element is not present
5Trong mã ví dụ trên, vị trí của đối tượng là 2 vì danh sách bắt đầu từ chỉ mục 0. Nếu chúng ta bắt đầu tìm vị trí đối tượng từ 1, chúng ta sẽ bắt đối tượng và trả về giá trị true. Khi chúng ta bắt đầu tìm đối tượng từ vị trí thứ 3, nó sẽ trả về false
Sử dụng mảng. phương thức some[]
mảng. Phương thức some[] lặp qua mọi phần tử của mảng giống như vòng lặp forEach trong JavaScript. Nó lấy chức năng gọi lại làm tham số. Người dùng có thể xác định một số điều kiện để áp dụng cho mọi phần tử mảng bên trong hàm gọi lại. Ngay cả khi điều kiện trở thành true đối với một phần tử, nó vẫn trả về true. Trong trường hợp của chúng tôi, chúng tôi sẽ kiểm tra loại giá trị và nếu đó là một đối tượng, nó sẽ trả về true
cú pháp
Cú pháp của mảng. phương thức some[] như được đưa ra dưới đây
Element is not present
6Ngoài ra, người dùng có thể sử dụng chức năng mũi tên bên trong chức năng gọi lại. Ở đây, chúng tôi đã tạo chức năng được đặt tên để duy trì sự đơn giản của mã
Thông số
mảng. phương thức some[] lấy chức năng gọi lại làm tham số
chức năng gọi lại - Đây là chức năng kiểm tra một số điều kiện trên mọi phần tử. Nếu bất kỳ phần tử đơn lẻ nào đánh giá điều kiện là đúng, thì mảng. phương thức some[] trả về true
Thí dụ
Ví dụ dưới đây chứng minh rằng mảng. phương thức some[]. Chúng tôi đã tạo mảng chứa đối tượng. Chúng ta sẽ lặp qua từng phần tử của mảng để kiểm tra kiểu của nó. Nếu một mảng chứa bất kỳ thực thể đơn nào, loại nào là một đối tượng, thì mảng. some[] trả về true
Element is not present
7Sự kết luận
Trong hướng dẫn này, chúng ta đã học được hai phương pháp để kiểm tra mảng, bao gồm cả đối tượng. Phương thức đầu tiên kiểm tra đối tượng có cùng cặp khóa-giá trị tồn tại trong mảng hay không. Thay vì kiểm tra đối tượng có cùng cặp khóa-giá trị, phương thức thứ hai kiểm tra thực thể của loại đối tượng
Tuy nhiên, có nhiều phương thức khác trong JavaScript để kiểm tra sự tồn tại của thực thể đối tượng trong mảng. Người dùng có thể sử dụng phương thức find[] hoạt động tương tự như mảng. phương thức some[]. Hơn nữa, mảng, bộ lọc[] và mảng. phương thức indexof[] cũng hữu ích để giải quyết các vấn đề được đưa ra trong hướng dẫn này