将几个JSON.stringify组合成一个

时间:2017-02-01 19:18:33

标签: javascript

如何将字符串与JSON.stringify组合?

这不起作用:

var objA = {a: 5};

var objB = {b: 6};

var str = JSON.stringify(objA) + JSON.stringify(objB);

console.log(JSON.parse(str)); //error

https://jsbin.com/yabacuyafe/edit?html,js,console

预期输出为:"[{\"a\":5},{\"b\":6}]"

2 个答案:

答案 0 :(得分:3)

如果您的预期输出是:

[{"a":5},{"b":6}]

然后使用:

JSON.stringify([objA, objB])

如果您的预期输出是:

{"a":5,"b":6}

然后使用:

JSON.stringify(Object.assign({}, objA, objB))

我不建议尝试使用字符串。首先组合对象,然后进行stringify。

答案 1 :(得分:2)

var objA = {a: 5};

var objB = {b: 6};
var combined = {
    objA: objA,
    objB: objB
}

var str = JSON.stringify(combined);

console.log(JSON.parse(str));