我确实意识到这个问题的标题是笨拙地选择的,如果有人提出建议,我很乐意将其更改为更具描述性的内容,我只是不知道如何以不同的方式描述它。
我有一些javascript代码,它创建了一个包含标记为trip的数组的json对象。此数组中的每个对象都包含一个标记为节点的数组,我希望该数组包含具有旅行的所有特定节点的对象。
var json = {origin: data.origin.name, destination: data.destination.name, trips: []};
for (var i = 0; i < data.trips.length; i++) {
var departure = data.trips[i].dep.time;
var arrival = data.trips[i].arr.time;
var trip = {departure: departure, arrival: arrival, nodes: []}
for (var j = 0; j < data.trips[i].legs.length; j++) {
trip.nodes.push({test: 'test'});
}
json.trips.push(trip);
}
结果如下所示。
{ origin: 'Dresden, Helmholtzstraße',
destination: 'Dresden, Zellescher Weg',
trips:
[ { departure: '12:04',
arrival: '12:26',
nodes: [Object] },
{ departure: '13:02',
arrival: '13:11',
nodes: [Object] } ] }
从数据中提取数据,第二个用于循环的数据包含几个元素。所以我希望在节点数组中看几次测试对象。我不太明白如何解释我得到的东西。它是一个包含未指定对象的数组吗?如果是这样,为什么?
答案 0 :(得分:5)
我认为这是你console.log
对象时的输出。我相信当对象是某个深度时,节点console.log
函数将回退到只显示Object
。这可以确保您的控制台不会被文本完全淹没。
要测试它,请尝试:
console.log(JSON.stringify(json, null, 4));
这会将json对象转换为格式正确的文本,应该完美记录。