#javascript #angularjs
Есть массив с обьектами data = [{service_id: 7777}, {service_id:9999}] у меня есть допустим переменная с айди var myid = 9999 как мне проверить существование этого ади в массиве ? средствами angularjs или javascript
Ответы
Ответ 1
Вот пример: var data = [{service_id: 7777}, {service_id:9999}] function getServicebyId(id) { return data.filter( function(data) { return data.service_id== id}); } var myid = 9999 var found = getServicebyId(myid); alert(found)Ответ 2
Можно использовать Array#some: let data = [{service_id: 7777}, {service_id:9999}], id = 7777; let isFound = data.some(_ => _.service_id === id); console.info(isFound);Ответ 3
2) var data = [ { "service_id": 7777, "service_id": "9999" } ]; function getServicebyId(service_id) { var found = null; for (var i = 0; i < data.length; i++) { var element = data[i]; if (element.service_id == service_id) { found = element; } } return found; } console.info(getServicebyId(9999));Ответ 4
решил так $scope.manageFavorService = function (serviceId) { var data = {};//sending an empty array to get response getService = serviceId; PortalApi.getFavorServices(data)//get an array with all favorites services .then(function(data) { function getFavorList(id)//looking if there already serviceId exist { return data.filter(function(data) { return data.service_id== id}); } $scope.isFavorite = getFavorList(getService), data = {serviceId:serviceId}; if ($scope.isFavorite.length == 0) {//add favorite if in answer we got empty array ****** } else {//del favorite if in answer we got array with our service } }); };Ответ 5
Прмер с условие if else var data = [{service_id: 7777}, {service_id:9999}] function getServicebyId(id) { return data.filter( function(data) { return data.service_id== id}); } function isEmpty(value) { if (!value) { return true; } for (var key in value) { if (hasOwnProperty.call(value, key)) { return false; } } return true; } var myid = 19999 var found = getServicebyId(myid); alert(found); if (!isEmpty(found)) alert("Yes"); else alert("No");
Комментариев нет:
Отправить комментарий