JSON 解析不工作 javascript

JSON parsing not working javascript

我遇到了一些问题,但我不知道如何解决。我正在尝试解析一个简单的 json 字符串并用它更新我网站的内容。

var json = [{"OID:":"1b383180186940dc0cc2a781fcf013ce", "NUMBER":"029348203984","SETTINGS":"Default","LATEST":"09-06-2015"}];
var obj=json[0];
console.log(obj['OID']);
console.log(obj['NUMBER']);

这导致:

未定义

029348203984

所以读出数字没问题。但是 OID 运行不正常。在我的另一段代码中它工作正常

var obj = arr[i];
var optn = document.createElement("OPTION");
optn.text = obj['OID'];
document.getElementById("List").options.add(optn);

这行得通

在原来的 JSON 中,您在 JSON 键中似乎多了一个字符:

"OID:":"1b383180186940dc0cc2a781fcf013ce"

看起来应该是

"OID":"1b383180186940dc0cc2a781fcf013ce"

相反。

您的 json 变量中有一个额外的 : 符号。

Try:
var json = [{"OID":"1b383180186940dc0cc2a781fcf013ce", "NUMBER":"029348203984","SETTINGS":"Default","LATEST":"09-06-2015"}];
var obj=json[0];
console.log(obj['OID']);
console.log(obj['NUMBER']);

编辑:
下次,我建议以更具可读性的格式声明您的对象(和数组的内容,以及任何可以超过 80 个字符的内容)。它将有助于捕获这样的错误。

    var json = [
      {
      "OID:":"1b383180186940dc0cc2a781fcf013ce",
      "NUMBER":"029348203984","SETTINGS":"Default",
      "LATEST":"09-06-2015"
      }
    ];

希望对您有所帮助!

在您的 json 对象中,引号内有一个冒号。

var json = [{"OID:":"1b383180186940dc0cc2a781fcf013ce", "NUMBER":"029348203984","SETTINGS":"Default","LATEST":"09-06-2015"}];

应该是...

var json = [{"OID":"1b383180186940dc0cc2a781fcf013ce", "NUMBER":"029348203984","SETTINGS":"Default","LATEST":"09-06-2015"}];

否则,如果您想要那个额外的冒号,则需要参考 obj['OID:']