民间, 我有一个函数创建一个Object,我想返回到浏览器。出于某种原因,浏览器获得一个没有内容的空对象:
{
pName: [ ]
}
以下是console.log(require('util').inspect(projectObject, false, 10));
{ pName:
[ foo:
[ nodejs:
[ staging:
[
{ name: 'i-4a14c51a', id: 'i-4a14c51a' },
{ name: 'i-19fc094a', id: 'i-19fc094a' },
],
production:
[
{ name: 'i-5f14c50f', id: 'i-5f14c50f' },
{ name: 'i-b1fb0ee2', id: 'i-b1fb0ee2' },
]
]
],
...
我会想象它没有返回对象的原因是因为它认为第一个实体是空的。
我在哪里弄错了?结果需要看起来像:
"hosts": [
{
"projectA": [
{
"foo": [
{
"nodejs": [
{
"production": [
{
"name": "Her blog",
"cmd": "ssh username@blog2.example.com"
}
]
}
]
}
]
}
]
},
]
答案 0 :(得分:2)
我相信你的问题在这里:
{ pName:
[ foo: // <-- invalid JSON
[ nodejs:
[ staging:
...
如果那是检查员的输出,我会仔细研究projectObject
是如何构建的(你是在创建一个数组,然后在其上为一个属性赋值吗?在这种情况下创建一个对象代替)。
我担心我不确定如何通过可用信息获得所要求的结果。