У меня есть опыт только с массивами JS, а не с объектами, поэтому я пытаюсь научиться их перемещаться. Я был бы признателен за любые ответы с хорошим объяснением, которые показывают процесс выполнения следующей задачи:Итерация через объект, чтобы найти соответствие для двух переменных ID
У меня есть месяц (выраженный как целое число, 1-11
) и набор данных для различных идентификаторов (также как целое число , например, 474
)
данные выглядит следующим образом (подмножество некоторых более длинных данных):
var myData = {
1: {474: true, 459: true},
4: {474: true, 578: true, 987: true, 459: true, 917: true, 296: true},
5: {474: true, 578: true, 1036: true, 391: true, 987: true, 459: true, 917: true, 296: true}
};
Мне нужно
а) Найдите первый ключ в мой индекс, основанный на мой month
значение. Например, var month = 4
;
б) Найдите ли истинным или ложным для моего ID
значения в этом подобъектов, например var ID = 917
Некоторые примеры того, что мне нужно проверить:
если month == 1
и ID == 459
возвращение true
если month == 1
и ID == 917
возвращение false
(917
нет в данных за месяц 1
если month == 4
и ID == 987
возвращения true
если month == 5
и ID == 917
возвращение true
если month == 5
и ID == 100
возвращение false
(100
нет в данных для month 5
)
Я защитил, что все месяцы 1-11
являются присутствуют в данных, поэтому мне не нужно иметь дополнительную проверку, чтобы увидеть, есть лиВ объекте существует значение. Просто нужно найти первый ключ, используя month
, а затем выполнить поиск в этом под-объекте для ID
, и если он найдет его обратно true
.
'если (MyData [месяц] [ID]) {/ * делаем что-то * /}' - Нет итерации или поиска необходимо просто проверить свойства непосредственно. – nnnnnn
'' Ему просто нужно найти первый ключ «' может быть только один ключ, который является «месяцем», чтобы быть точным здесь, если мы говорим об обучении. Что касается вопроса, просто обращайтесь к ним и защищайте их от «неопределенных» значений, и вам хорошо идти. – Dellirium