首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何从现有的JSON文件中添加新的JSON

如何从现有的JSON文件中添加新的JSON
EN

Stack Overflow用户
提问于 2014-11-27 13:57:25
回答 2查看 1.4K关注 0票数 2

我在这里搜索了很少相关的帖子,但没有帮助。我创建了一个json文件,它包含一些文本,我想使用javascript(存储在本地的json )在其中追加一些JSON。

我有这样的json file

代码语言:javascript
运行
复制
{ "Home": [ "a", "b", "c" ] }

我想包括这段文字"Log": 1

想要实现这样的目标,

代码语言:javascript
运行
复制
{ "Home": [ "a", "b", "c" ], "Log": 1 }

现在我在我的json文件中有这样的格式(目前我有,但是json格式不正确)

代码语言:javascript
运行
复制
{ "Home": [ "a", "b", "c" ] } 
{ "Log": 1 }

$.getJSON('myfile.json', function(data) {
    alert("success");
}.error(function(data){
    alert(JSON.stringify(data));
});

这将返回parser error。我知道JSON格式是错误的。请指导我创建正确的JSON格式。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-11-27 14:14:06

您需要读取JSON,将其解析为JS对象,编辑对象,并在编写之前将其转换回JSON:

假设myfile.json包含:{ "Home":"a“、"b”、"c“}

代码语言:javascript
运行
复制
$.getJSON('myfile.json', function(data) {
    alert("success");
    obj = JSON.parse(data);
    obj.log = 1;
    writeJSON(JSON.stringify(obj));
}.error(function(data){
    alert(JSON.stringify(data));
});

而writeJSON将会是这样的:

代码语言:javascript
运行
复制
function writeJSON(jsonString)
    $.ajax({
        type: 'POST',
        url: 'myfile.json',
        data: jsonString,
        success: function(data) { alert('write succesful!'); },
        contentType: "application/json",
        dataType: 'json'
    });
}

假设您使用的是服务器,它可以通过这个端点进行读写。

票数 3
EN

Stack Overflow用户

发布于 2014-11-27 13:59:23

JSON的两个版本都存在错误。在字符串"的开头缺少c

http://jsonlint.com/将帮助您跟踪JSON中的错误发生的地方。

根据经验,您应该使用成熟库中的JSON序列化程序来创建JSON,而不是手工或字符串连接。

现在我在我的json档案里有这样的

那是完全错误的。您在“现在我想实现这样的目标”中的代码是正确的(除了上面提到的错误)。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27172383

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档