为什么 JSON.parse 不适用于此字符串?

Nat*_*are -2 javascript parsing json

我无法解析以下字符串:

try {
  var data_obj = JSON.parse("{'raw': -243666272256, 'format': '-24.67BB', 'longFormat': '-243,666,272M'}")
} catch (e) {
  console.error(e);
}
cnsole.log(data_obj.raw)
Run Code Online (Sandbox Code Playgroud)

Kha*_*bir 5

当您包装您的属性并且不解析它时,JSON 标准不允许单引号。相反,它需要双引号。请检查以下示例:

var data_obj = JSON.parse('{"raw":-243666272256,"format":"-24.67BB","longFormat":"-243,666,272M"}');
        console.log(data_obj, 'data');
        console.log(data_obj.raw);
Run Code Online (Sandbox Code Playgroud)

  • @khabir你应该解释你的答案有什么不同,而不是仅仅发布一段代码。从长远来看,“为什么”比“如何”更重要。 (3认同)