我有一个JS对象:
var source = {};
source.quantity = 1;
source.text = 'test';
现在我JSON它:
var json = JSON.stringify(source);
json看起来像这样:
{"quantity":"1","text":"test"}
我希望它是这样的:
[{"quantity":"1"},{"text":"test"}]
我可以这样做吗?
答案 0 :(得分:3)
将所有keys作为数组获取map将对象作为键值从source
JSON.stringify(
Object.keys(source)
.map(
function (e) {
var o = {};
o[e] = source[e];
return o;
}
)
); // "[{"quantity":1},{"text":"test"}]"
答案 1 :(得分:1)
var json = JSON.stringify([
{quantity: "1"},
{text: "test"}
]);
答案 2 :(得分:1)
我想这是不可能的,但你可以这样做:
var source = {};
source.quantity = 1;
source.text = 'test';
var result = [];
for(var i in source) {
var obj = {};
obj[i] = source[i];
result.push(obj);
}
var json = JSON.stringify(result);
我希望这可以帮到你。