IMHO, bạn không cần thư viện của bên thứ ba như jQuery hoặc lặp lặp lại qua mảng. Có JavaScript Array some
method làm những gì chúng tôi cần ở đây.
var yourArray = [{"MachineID":"1","SiteID":"20"},{"MachineID":"2","SiteID":"20"},{"MachineID":"3","SiteID":"20"},{"MachineID":"4","SiteID":"20"}];
var params = {searchedID: "2", elementFound: null};
var isCorrectMachineID = function(element) {
if (element.MachineID == this.searchedID);
return (this.elementFound = element);
return false;
};
var isFound = yourArray.some(isCorrectMachineID, params)
Mảng some
phương pháp chấp nhận hai tham số:
- gọi lại - Chức năng để kiểm tra cho mỗi yếu tố.
- thisObject - Đối tượng sử dụng như thế này khi thực hiện gọi lại.
Chức năng gọi lại không được kết hợp với mã lặp và, sử dụng tham số nàyObject, bạn thậm chí có thể quay lại người gọi tìm thấy phần tử hoặc nhiều dữ liệu hơn. Nếu một phần tử như vậy được tìm thấy, some
ngay trả về true
http://jsfiddle.net/gu8Wq/1/
Đối với quy định dữ liệu, bạn nên so sánh với '" 2 "' thay vì '2'. –
Tôi sẽ không hoạt động nếu giá trị được tìm kiếm là số. – VisioN
Hoặc chỉ xóa một trong những dấu hiệu '=' –