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

Javascript 如何从现有JSON文件添加新的JSON,javascript,jquery,json,Javascript,Jquery,Json,我在这里搜索得到了一些相关的帖子,但没有帮助。我创建了一个json文件,其中包含一些文本,我想使用javascript(本地存储的json)在其中添加更多json 我有这样的json文件: { "Home": [ "a", "b", "c" ] } 我想包括此文本“Log”:1 要做到这一点, { "Home": [ "a", "b", "c" ], "Log": 1 } 现在我的json文件中有类似的内容(目前有,但json格式不正确) 这将返回解析器错误。我知道JSON格式是错误的。请指

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

我有这样的
json文件

{ "Home": [ "a", "b", "c" ] }
我想包括此文本
“Log”:1

要做到这一点,

{ "Home": [ "a", "b", "c" ], "Log": 1 }
现在我的json文件中有类似的内容(目前有,但json格式不正确)


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

错误出现在两个版本的JSON中。您缺少字符串
c
开头的

将帮助您跟踪JSON中出现错误的位置

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


现在我的json文件中有这样的内容


这是完全错误的。您在“Now i want to Acreation Ithis”中的代码是正确的(除了上面提到的错误)。

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

假设myfile.json包含: {“家”:[“a”、“b”、“c”]}

writeJSON将类似于:

function writeJSON(jsonString)
    $.ajax({
        type: 'POST',
        url: 'myfile.json',
        data: jsonString,
        success: function(data) { alert('write succesful!'); },
        contentType: "application/json",
        dataType: 'json'
    });
}

假设您使用的服务器可以通过此端点进行读写。

您可以显示用于写入json文件并附加到json文件的代码,因为这就是问题所在吗?@LcLk`var homeicons={“Home”:g};`
var a=json.stringify(homeicons);
{“Home”:[“a”,“b”,“c”],“Log”:1}(a)或
[{Home:“[“a”,“b”,“c”]},{“Log”:1}]
(b),您不能只将数据附加到json字符串并获得一个工作的json字符串。如果使用(b),您可以使用
var数组=/*来自(b)*/;var结果={};$.extend.apply($,[{}]+数组);
;@Prusse请提供更多详细信息..在jsonlint中,以下格式可以..{”主页“:[“a”、“b”、“c”],“日志”:1}@Anu-是的,我就是这么说的。@Anu-就像那样!你只是把它放在文件中!我已经有一些json文件了。我想在那个json中插入新的json/值。请看我的帖子…@Anu-你帖子的那部分没有意义。你说的是本地存储的json,但你正在使用HTTP远程访问它。问题是我调用了ed我的javascript文件,在另一个脚本文件中使用$.getScript…现在脚本没有加载…到底是什么问题?你不能更新两个脚本然后再试一次吗?你使用的是哪台服务器,我想这里可能会有更多的问题。这个
myfile.js
$.getJson
功能…什么n删除
$getJson
js文件已加载…否则未加载…您是否可以将所有代码添加到JSFIDLE,或至少将其作为片段包含在原始问题中?不是整个项目,而是myFile.js,加载它的文件和处理json请求的服务器。
$.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));
});
function writeJSON(jsonString)
    $.ajax({
        type: 'POST',
        url: 'myfile.json',
        data: jsonString,
        success: function(data) { alert('write succesful!'); },
        contentType: "application/json",
        dataType: 'json'
    });
}