javascript - JSON.stringify 似乎无法按预期工作

标签 javascript json stringify

我有以下代码;

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 定义为对象,而不是数组。这样您就可以在其中添加或删除其他属性作为键:值对。要作为对象返回,您应该像这样使用 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

关于javascript - JSON.stringify 似乎无法按预期工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57098867/

相关文章:

javascript - 显示我返回的 JSON

jquery - 为什么我无法从测试框架中的有效 JSON 文件解析对象结构

java - 将不同类型对象的 JSON 转换为 java List 对象

c++ - 编写一个宏来将结构的内容字符串化

javascript - TaffyDB - 组合方法

javascript - 从 Javascript、Ajax、IE : can responseBody be read from Javascript (not VB)? 访问二进制数据

javascript - Angular JS 当前范围是什么?

javascript - jQuery - 单击和按键事件的行为相同

json - 执行 cf events 时,每页结果不起作用

javascript - 字符串化 JSON 内部对象的最佳实践