javascript - 如何使用 javascript 更改 JSON 文件
问题描述
我想更改我的 JSON 文件或向我的 SON 文件添加一个元素,但是是真实文件。我试过这段代码,但它不适用于真实文件。只有选项卡在 Web 上打开的时间发生了变化。如何在真实文件中处理它?不是用户文件,它是服务器文件,但我尝试了我的本地文件。
let xmlreq = new XMLHttpRequest()
xmlreq.open("GET","users.json",true)
function test(){
const obj = JSON.parse(xmlreq.responseText);
console.log(obj);
obj.user1.name="john";
console.log('obj.user1.name: ', obj.user1.name);
obj.user2.push("item");
console.log('obj.user2.: ', obj.user2);
}
xmlreq.send()
其他
let xmlreq = new XMLHttpRequest()
function test(){
// let parsereq= JSON.parse(xmlreq.responseText);
const obj = JSON.parse(xmlreq.responseText);
console.log(obj);
obj.user1.name="john";
console.log('obj.user1.name: ', obj.user1.name);
obj.user2.push("item");
console.log('obj.user2.: ', obj.user2);
}
xmlreq.open("GET","users.json",true)
xmlreq.send()
解决方案
首先,您必须使用 File API 来加载文件。
https://developer.mozilla.org/en-US/docs/Web/API/File
然后你必须解析 JSON 数据。
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON/parse
然后你可以做你的修改。
但是您不能直接修改本地磁盘上的文件。相反,您必须下载文件才能覆盖原始文件。
为此,您必须从 JSON 数据创建一个数据 URL。
https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/Data_URIs
最后,您可以创建一个链接来下载新的 JSON。
推荐阅读
- java - 如何使用私有 ssl 证书连接到私有 url
- excel - 如何从 VBA Excel 抓取 Googlemaps?
- javascript - 可以在 AST 树中搜索第一个节点之后的节点的自定义 ESLint 规则
- firebase - Firebase 和 admob 无法链接
- linux - 连接变量的问题,cat 和 cut 命令的结果
- php - 我想使用某些条件进行排名
- python - 从 CSV 文件 Python 中提取列:ValueError: too many values to unpack (expected 4)
- c# - 如何在 Razor 中动态设置变量?
- postgresql - How to find postgresql query which is consuming the most I/O
- ruby-on-rails - AWS 运行 Rails 应用程序的架构指南(Web/Worker 设置)