У меня есть JSON, который структурирован так:
студентов. json (ОБНОВЛЕНО ИЗ КОММЕНТАРИЙ НИЖЕ)
{
Cindy: { age: 9, m1: 80, m2: 90, s1: 90, s2: 100 },
Mark: { age: 12, m1: 80, m2: 90, s1: 90, s2: 100 },
Jeff: { age: 8, m1: 90, m2: 90, s1: 90, s2: 95 },
Ann: { age: 11, m1: 90, m2: 60, s1: 90, s2: 100 },
Jason: { age: 5, m1: 95, m2: 30, s1: 90, s2: 185 },
Harvey: { age: 10, m1: 100, m2: 70, s1: 90, s2: 100 },
Mike: { age: 9, m1: 100, m2: 80, s1: 90, s2: 82 },
Ross: { age: 9, m1: 88, m2: 90, s1: 90, s2: 100 },
};
В моем коде javascript я импортируя несколько JSON с использованием JQuery.
var objects = {};
$.getJSON("object1.json", function (data) {
objects = data;
});
var students = {};
$.getJSON("info.json", function (data) {
students = data;
});
// .......
function function1(object) {}
function function2(object) {}
// .......
function main() {
function1(object1);
function2(object2);
}
Когда я проверяю импортированные объекты студентов, я получаю:
[object Object]:{
"Cindy" : {"age": 9, "m1":80, "m2":90, "s1":90 , "s2":100},
"Mark" : {"age": 12, "m1":80, "m2":90, "s1":90 , "s2":100},
"Jeff" : {"age": 8, "m1":90, "m2":90, "s1":90 , "s2":95},
"Ann" : {"age": 11, "m1":90, "m2":60, "s1":90 , "s2":100},
"Jason" : {"age": 5, "m1":95, "m2":30, "s1":90 , "s2":185},
"Harvey" : {"age": 10, "m1":100, "m2":70, "s1":90 , "s2":100},
"Mike" : {"age": 9, "m1":100, "m2":80, "s1":90 , "s2":82},
"Ross" : {"age": 9, "m1":88, "m2":90, "s1":90 , "s2":100}
}
Похоже, что этот [объект объекта] теперь «ключ»?
ОБНОВЛЕНО:
Мой первоначальный вопрос был связан с мыслью, что это мешает мне получить доступ к объекту, но это не было моей проблемой. Работает как положено. Я могу получить доступ к Students.Cindy.age // 9 очень хорошо. Моя проблема в том, что get JSON происходит ПОСЛЕ вызова функции, поэтому «неопределенные» объекты передаются в функции. Сначала мне нужно загрузить html, так как некоторые функции javascript манипулируют страницей html.