一尘不染

在 JavaScript 中解析 JSON?

javascript

我想在 JavaScript 中解析一个 JSON 字符串。响应类似于

var response = '{"result":true,"count":1}';

我怎样才能得到这些resultcount


阅读 140

收藏
2022-02-17

共1个答案

一尘不染

在 JavaScript 中解析 JSON 的标准方法是JSON.parse()

JSONAPI 是随ES5(2011 年)引入的,并且已经在超过 99% 的浏览器(按市场份额)和 Node.js 中实现。它的用法很简单:

const json = '{ "fruit": "pineapple", "fingers": 10 }';
const obj = JSON.parse(json);
console.log(obj.fruit, obj.fingers);

唯一不能使用JSON.parse()的情况是,如果您正在为古老的浏览器编程,例如 IE 7 (2006)、IE 6 (2001)、Firefox 3 (2008)、Safari 3.x (2009) 等. 或者,您可能处于不包含标准 API 的深奥 JavaScript 环境中。在这些情况下,请使用json2.js ,这是 JSON的发明者Douglas Crockford编写的 JSON 参考实现。该库将提供JSON.parse().

在处理非常大的 JSON 文件时,JSON.parse()可能会因为其同步性质和设计而窒息。为了解决这个问题,JSON 网站推荐了第三方库,例如Oboe.jsclarinet,它们提供了流式 JSON 解析。

jQuery 曾经有一个$.parseJSON()函数,但它在 jQuery 3.0 中被弃用了。无论如何,在很长一段时间里,它只不过是一个包装JSON.parse()

2022-02-17