У меня есть следующие JSON:Стараясь получить JSON в желаемом формате с NodeJS
{
"boxes" : {
"box-1" : {
"what": "lose",
"opened": false
},
"box-2" : {
"what": "lose",
"opened": false
},
"box-3" : {
"what": "lose",
"opened": true
},
"box-4" : {
"what": "win",
"opened": false
},
"box-5" : {
"what": "lose",
"opened": true
},
"box-6" : {
"what": "unknown",
"opened": false
},
"box-7" : {
"what": "lose",
"opened": true
},
"box-8" : {
"what": "lose",
"opened": false
}
}
}
И когда я загрузить его в моей заявки (я использую NodeJS):
var save = __dirname + '/save.json';
var saveData = fs.readFileSync(save, 'utf8');
if(saveData)
reloadGame(saveData);
else
askBoxes();
function reloadGame(saveData)
{
saveData = JSON.parse(saveData);
boxes = Object.keys(saveData.boxes).length;
for(var i=0;i<=boxes;i++)
{
console.log(saveData.boxes[i]);
}
}
Смотрите, что мне нужно использовать Object.key
s, чтобы получить длину. И мой console.log возвращает undefined внутри цикла for.
Обычно я не использую Object.keys
, чтобы получить длину чего-то внутри файла JSON ... И почему мой консольный.log не работает?
Чувства, подобные JSON, некорректно отформатированы. Может быть, мне не нужен ключ коробки вообще, и у меня могут быть только коробки в виде массива?
Как переформатировать его, чтобы стать массивом? Я попытался, но продолжал беспорядок JSON ... – Cameron
@Cameron .. добавил формат 'JSON' –