javascript - 向 JSON 对象添加新的数组元素

我从一个名为 teamJSON 的变量中的 JSON 文件中读取了一个 JSON 格式的对象,如下所示:

 {"theTeam":[{"teamId":"1","status":"pending"},{"teamId":"2","status":"member"},{"teamId":"3","status":"member"}]}

我想在数组中添加一个新项,比如

{"teamId":"4","status":"pending"}

结束
{"theTeam":[{"teamId":"1","status":"pending"},{"teamId":"2","status":"member"},{"teamId":"3","status":"member"},{"teamId":"4","status":"pending"}]}

写回文件之前。添加新元素的好方法是什么?我接近了,但所有的双引号都被转义了。我已经在 SO 上寻找了一个很好的答案,但没有一个完全涵盖这种情况。任何帮助表示赞赏。

最佳答案

JSON 只是一个符号;做出你想要的改变parse以便您可以将更改应用到 native JavaScript 对象,然后 stringify返回 JSON

var jsonStr = '{"theTeam":[{"teamId":"1","status":"pending"},{"teamId":"2","status":"member"},{"teamId":"3","status":"member"}]}';

var obj = JSON.parse(jsonStr);
obj['theTeam'].push({"teamId":"4","status":"pending"});
jsonStr = JSON.stringify(obj);
// "{"theTeam":[{"teamId":"1","status":"pending"},{"teamId":"2","status":"member"},{"teamId":"3","status":"member"},{"teamId":"4","status":"pending"}]}"

https://stackoverflow.com/questions/18884840/

相关文章:

ruby-on-rails - 使用 Rails 和 HTTParty 将 JSON 发布到 API

javascript - 如何解析 JSON 以在 JavaScript 中接收 Date 对象?

javascript - 如何在 Javascript/HTML5 中解析 Excel (XLS)

javascript - JSON 和 JavaScript 对象有什么区别?

json - 带 json 参数的 curl GET 请求

json - 如何从 http.Get 获取 JSON 响应

python - 检查键是否存在并使用 Python 迭代 JSON 数组

python - 如何将 XML 字符串转换为字典?

javascript - 使用 JQuery 定义要追加的 HTML 模板

javascript - JavaScript 可以连接 MySQL 吗?