3 cách để kiểm tra phần tử có tồn tại trong mảng hay không bằng javascript

thumbnail


Có những lúc ta cần kiểm tra xem một phần tử có tồn tại trong mảng hay không.
Để thực hiện việc này, có nhiều cách khác nhau, bao gồm cả việc duyệt qua mảng
thủ công.




Tuy nhiên, khi có sẵn các công cụ hỗ trợ, không lý do gì ta không tận dụng
chúng. Trong bài viết này, tôi sẽ giới thiệu ba phương pháp để kiểm tra sự tồn
tại của một phần tử trong mảng. Mỗi phương pháp đều có ưu điểm và nhược điểm
riêng, tùy thuộc vào yêu cầu cụ thể của dự án.



Hãy cùng bắt đầu nào.



Các cách kiểm tra một phần tử trong mảng



.includes()



Đối với trường hợp, bạn chỉ cần kiểm tra một giá trị nào đó có tồn tại trong
mảng hay không? Câu trả lời chỉ cần: có hoặc không. Phương pháp hiệu quả nhất
là sử dụng hàm .includes(). Bạn chỉ cần truyền giá trị cần kiểm tra vào tham
số, kết quả true/false sẽ được trả về.



Ví dụ:





let names = ["Jim","Sarah","Tychus"];

if(names.includes("Tychus")) {
console.log("Value found");
}





.indexOf()



Ngoài yêu cầu kiểm tra xem giá trị đó có tồn tại hay không? Nếu tồn tại thì cụ
thể giá trị đó ở vị trí nào trong mảng. Lúc này hàm .indexOf() là lựa chọn
sáng suốt.





let names = ["Jim","Sarah","Tychus"];

if(names.indexOf("Tychus") >= 0) {
console.log("Value found");
}





Lưu ý: Hàm .indexOf() chỉ trả về vị trí của giá trị đó trong mảng, nếu không
tồn tại thì nó trả về -1.



Duyệt mảng thủ công



Đây là cách thủ công mà mình đã nhắc đến ở đầu bài viết. Cách làm này không
cần phải biết kỹ thuật gì cao siêu cả, cứ nghĩ sao làm vậy.




Mặc dù các viết code thì nó dài vậy thôi, chứ hiệu năng thì cũng tương đương
với hai cách ở trên.



function findValue(haystack,needle) {
for(const item of haystack) {
if(item === needle) {
return true;
}
}
return false;
}
let names = ["A","B","C","D","E"];
console.log(findValue(names,"D"));





Trên đây là một số cách để bạn có thể tìm kiếm một phần tử bất kỳ trong mảng.
Mặc dù kỹ thuật này không khó, nhưng mình tin là nhiều bạn chưa biết, hoặc đã
biết nhưng đã quên . Coi như đây là phần note lại dùng khi cần thiết.

Các bài viết liên quan:

Hiju Blog

I'm HiJu

Post a Comment

Previous Post Next Post