json - json.js 和 json2.js 的区别

标签 json

谁能告诉我这两个 JSON 解析器有什么区别?

https://github.com/douglascrockford/JSON-js/blob/master/json.js
https://github.com/douglascrockford/JSON-js/blob/master/json2.js

我有一个 2007-04-13 的 JSON 文件(它有诸如 parseJSON 之类的方法)。我在任何新版本中都没有看到这些方法。

最佳答案

来自他们的代码:

// Augment the basic prototypes if they have not already been augmented.
// These forms are obsolete. It is recommended that JSON.stringify and
// JSON.parse be used instead.

if (!Object.prototype.toJSONString) {
    Object.prototype.toJSONString = function (filter) {
        return JSON.stringify(this, filter);
    };
    Object.prototype.parseJSON = function (filter) {
        return JSON.parse(this, filter);
    };
}

我猜 parseJSON 已经过时了,因此新版本 (json2) 甚至不再使用它了。但是,如果您的代码使用 parseJSON 很多,您可以在某处添加这段代码以使其再次工作:

    Object.prototype.parseJSON = function (filter) {
        return JSON.parse(this, filter);
    };

关于json - json.js 和 json2.js 的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/552135/

相关文章:

javascript - 如何更改 Javascript 对象的类型?

json - 获取 play.api.libs.json.JsValue 的所有键

java - 使用 Jackson 为多态类反序列化 JSON

javascript - JSONPath 作为单独的 JSON 排除

c++ - 如何在 C++ 中将 map 编写为 json 对象

java - 如何只获取 JSON 中大数组的第一个元素?

arrays - 使用 JSON 数组和 JSON 对象有什么区别?

json - 从非嵌套的 json 数据文件创建配置单元表给出的输出为 null

ios - JSON key :value pairs disappearing after original json call

php - 如何在没有键值对的情况下从android中的JSON收集数据?