2

我有以下用于读取 JSON 文件的代码。它没有给出错误,但我在变量中得到了 null:

var myData = null;
$.ajax({
    type: 'GET',
    async: false,
    url: 'myJson.json',
    dataType: 'json',
    success: function (r) {
        myData = r;
    }
});

下面是我的 JSON 文件:

{items:[{value:"1",name:"John"},{value:"2",name:"Henry"}]};
4

1 回答 1

13

您的JSON 无效

以 JSON 序列化的对象采用以下格式:

在此处输入图像描述

字符串在哪里:

在此处输入图像描述

JSON 字符串必须进行转义。你错过了"s。

正确的 JSON 应该是:

{"items":[{"value":"1","name":"John"},{"value":"2","name":"Henry"}]}

我是如何创建它的

即使我没有记住或查找特定的 JSON 规则,您也可以始终从 JS 变量生成 JSON,假设它是可序列化的(在您的情况下是):

  • 打开 JavaScript 控制台
  • 键入var a = 并粘贴您的对象文字
  • 按回车。
  • 类型JSON.stringify(a)
  • 按回车。复制结果。
  • 将结果粘贴到您的外部.json文件中。JavaScriptJSON.stringify生成有效的 JSON。
于 2013-05-23T05:05:13.023 回答