我有一个带变量的节点js代码:
var elements = [];
var subelement1 = {};
var subelement2 = {};
如何构造具有如下结构的json:
{
"elements":[
"subelement1" :{},
"subelement2" :{}
]
}
答案 0 :(得分:1)
要合并它们,请将每个“ sub ”对象设置为main的属性:
elements.subelement1 = subelement1;
elements.subelement2 = subelement2;
然后,您可以使用周围的对象stringify:
var json = JSON.stringify({ elements: elements });
但是,使用命名键,您需要使用Object
。
var elements = {};
{
"elements": {
"subelement1": {},
"subelement2": {}
}
}
虽然Array
可以具有命名属性,但它们不能在文字中给出。
var foo = [];
foo.bar = 'baz';
并且不会像数字索引一样承认/ counted。
console.log(foo.bar); // "baz"
console.log(foo.length); // 0
foo[0] = 'qux';
console.log(foo.length); // 1