【发布时间】:2016-03-28 15:41:54
【问题描述】:
我的问题最好通过this jsfiddle 给出,代码如下:
var a = 1, b = 'x', c = true;
var d = {a: a, b: b, c: c}; // <--- object literal
var e = [a, b, c]; // <--- array
var f = {a, b, c}; // <--- what exactly is this??
// these all give the same output:
alert(d.a + ', ' + d.b + ', ' + d.c );
alert(e[0] + ', ' + e[1] + ', ' + e[2]);
alert(f.a + ', ' + f.b + ', ' + f.c );
f 是一种什么样的数据结构?它只是d 的简写吗?
【问题讨论】:
-
第一个其实不是JSON。
-
OK @GolezTrol 它不是严格的 JSON,因为键不在双引号中。那么在我的帖子中,您究竟会将称为
d数据结构吗? -
重要的是要了解所有版本都不是有效的 JSON。将数据表示为 JSON 字符串的方式是
{"a" : 1, "b" : "x", "c" : true } -
@drmrbrewer 这是一个object literal。它不是 JSON,因为它是 javascript 代码,而 JSON 是一种序列化格式。例如
var a = '{ "a" : "value"}'->a包含一个可以通过JSON.parse反序列化为对象的字符串。