JSON.stringify 似乎没有按预期工作

JSON.stringify seeming to not work as expected

我有以下代码;

var rawData = [];
rawData['uid'] = 105;
rawData['auth_customer'] = true;
console.log(rawData);
var postData = JSON.stringify(rawData);
console.log(postData);

第一个console.log正在输出;

[uid: 105, auth_customer: true]

但是最后一个console.log只是返回一个[]。 我需要将数组变成 json 对象。我错过了什么吗?

谢谢!

您应该将 rawData 定义为对象,而不是数组。这样您就可以添加或删除其他属性作为 key:value 对。并作为对象返回,您应该像这样使用 JSON.parse 进行解析。

    var rawData = {};
    rawData['uid'] = 105;
    rawData['auth_customer'] = true;

    console.log(rawData); // Object

    var postData = JSON.stringify(rawData);
    console.log(postData); // String - "{'uid':105,'auth_customer':true}"

    console.log(JSON.parse(postData)); // Object