Я настраиваю свой код и имею проблему. Этот код — всего лишь пример того, что я пытаюсь сделать. SO в основном config.Te[i].ref должен читать все ссылки в Te.. но он читает только первую строку, а не все строки в Te...
С Уважением
for (var i in config.acc,config.Te,config.Hu,config.Ve)
console.info(config.Te[i].ref)
{}
когда я изменяю вывод журнала на config.acc[i].ref или другой, он также считывает первую строку только этой конкретной конфигурации.
но когда я изменяю его на for (var i в config.acc), он читает все ссылки...
поэтому я думаю, что неправильно отформатировал код, и я не знаю, как это исправить. ошибка должна быть в разделении конфигов. я просто хочу назвать их отдельно 1 на 1.
"acc":
[
{"type":"PIR", "ref":0 },
{"type":"PIR", "ref":0 },
{"type":"PIR", "ref":0 },
{"type":"PIR", "ref":0 },
{"type":"PIR", "ref":0 },
{"type":"PIR", "ref":0 },
{"type":"PIR", "ref":0 },
{"type":"PIR", "ref":0 },
{"type":"PIR", "ref":0 },
{"type":"PIR", "ref":0 },
{"type":"PIR", "ref":0 },
{"type":"PIR", "ref":0 },
{"type":"PIR", "ref":0 },
{"type":"PIR", "ref":0 },
{"type":"PIR", "ref":0 },
{"type":"PIR", "ref":0 },
{"type":"PIR", "ref":0 },
{"type":"PIR", "ref":0 },
{"type":"PIR", "ref":0 },
{"type":"PIR", "ref":0 },
{"type":"PIR", "ref":0 },
{"type":"PIR", "ref":0 },
{"type":"PIR", "ref":0 },
{"type":"PIR", "ref":0 },
{"type":"PIR", "ref":0 },
{"type":"PIR", "ref":0 },
{"type":"PIR", "ref":0 },
{"type":"PIR", "ref":0 },
{"type":"PIR", "ref":0 },
{"type":"PIR", "ref":0 },
{"type":"PIR", "ref":0 },
{"type":"PIR", "ref":0 },
{"type":"PIR", "ref":0 }
],
@Thomas Томас нет, у них у всех много строк ... вот почему я спрашиваю, как решить эту проблему ... например, я хочу вызвать ссылки с помощью console.info (config.Te [i].ref) и так далее.
for (var i in config.Te) console.info(config.Te[i].ref);@ Томас, спасибо, я это уже знаю. как и вопрос выше, как я могу сделать это с остальными, так как приведенный выше код дает мне только 1 строку, а не все из них в массиве... и действительно, если я использую for (var i в config.Te), это даст мне информация, которая мне нужна только для этого .. как насчет остальных? я просто хочу объединить их в один код. чтобы я мог назвать это console.info(config.acc[i].ref) console.info(config.hu[i].ref) console.info(config.ve[i].ref).
Наконец, кажется, я понял, что вы имели в виду под этой конструкцией for(var i=0, length=Math.max(config.acc.length,config.Te.length,config.Hu.length,config.Ve.length); i<length; ++i) { ... }
@ Томас, вероятно, стоит ответа.
@Thomas, это работает, но только это дает мне новую ошибку, когда я помещаю в него этот код: if (myData.ref == config.acc[i].ref) {МОЕ ДЕЙСТВИЕ} получает эту ошибку после этого: Невозможно прочитать свойство 'ссылка' неопределенного. код ошибки взят из config.acc[i].ref
Кажется, что acc не такой длинный, как один из других списков; а может в нем есть пробелы, я ваших данных не знаю. Вы не можете вслепую получить доступ к свойствам значения в любом из списков, потому что значение/индекс может не существовать в этом конкретном списке. Это цена за подход, который вы хотите использовать; вы должны делать нулевые проверки.
@Thomas for(var i=0, length=Math.max(config.acc.length,config.Te.length,config.Hu.length,config.Ve.length); i<length; ++i) {console.info(config.acc[i].ref)} показывает нормальное значение .. но почему это не так, если я использую for(var i=0, length=Math.max(config.acc.length,config.Te.length,config.Hu.length,config.Ve.length); i<length; ++i) {if (myData.ref == config.acc[i].ref) { console.info(config.acc[i].ref)}}
@Thomas, у меня все работает, но он читает максимум 5 строк ... как его увеличить?



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Вы можете хранить свои основные объекты в массиве, а затем использовать вложенный цикл for.
const arr = [config.acc,config.Te,config.Hu,config.Ve]
for(let elm of arr){
for(let i in elm){
console.info(elm[i].ref)
}
}
спасибо за ваш очень быстрый ответ, это произойдет, когда я создам событие, которое запустит все. я просто хочу видеть, как если я использую: console.info(config.Te[i].ref), что он только перечисляет ссылку из Te и так далее. а не все остальные.. возможно ли это?
Могу ли я вызвать журнал отдельно от конфигов? например, если я хочу видеть только информацию из config.Hu, как мне это сделать? console.info(elm[i].ref) дает мне их все.
for (var i in config.acc,config.Te,config.Hu,config.Ve)эквивалентенfor (var key in config.Ve)Оператор запятой MDN, и я предполагаю, чтоconfig.Veимеет только 1 строку.