javascript对象和json数据是否相同?

时间:2014-01-01 13:44:54

标签: javascript json

我正在学习javascript,只是注意到我们用来定义对象的语法与json格式相同。所以我想知道它们是否只是等价的。更精确,它是否意味着任何javascript对象(包括其变量和函数)都可以转换为json格式,并以相同的方式?

3 个答案:

答案 0 :(得分:2)

JSON(就像它的名字“JavaScript Object Notation”表示)JavaScript语法的子集*,即(几乎)每个* JSON都是有效的JavaScript,但不是相反的。

例如,

函数在JSON中没有等效表示,因此无法转换为JSON。 由于JSON的主要目的是serialization,因此它也不提供statements的表示。

*有一个例外:或多或少所有Unicode字符都可以用JSON字面编写,但它们必须使用JavaScript中的转义序列编写。有关详细信息,请参阅this blog post。所以每个有效的JSON都不是有效的JavaScript。

答案 1 :(得分:0)

JSON数据只包含键值对中指定的数据;其中js对象包含键值对中的数据和函数。

答案 2 :(得分:0)

将JSON视为javascript对象的字符串表示。 - 字符串是此处的关键字。

主要用于通过HTTP轻松传输。它是由 Douglas Crockford 创建的一种方法,用于启用类似于XML,RSS等的友好Javascript数据传输格式。

JSON通常由服务器和客户端解析回Javascript对象以供使用。