Javascript 什么';这段代码(JS)有什么不同?

Javascript 什么';这段代码(JS)有什么不同?,javascript,firebug,Javascript,Firebug,我想知道这段代码之间的区别是什么: var c = [{"test": 1}]; 这个密码呢 var c = {"test": 1}; Firebug说它们都是对象,但如果使用第一个示例执行console.log(c.test),它将返回“undefined”。所以我有点想知道这是关于什么的,第一个示例应该如何访问?第一个是一个数组,其中包含一个元素,即{“test”:1}对象,而第二个是{“test”:1}对象本身 因此,使用第一个可以c[0]。test,而使用第二个可以c.test第一个

我想知道这段代码之间的区别是什么:

var c = [{"test": 1}];
这个密码呢

var c = {"test": 1};

Firebug说它们都是对象,但如果使用第一个示例执行console.log(c.test),它将返回“undefined”。所以我有点想知道这是关于什么的,第一个示例应该如何访问?

第一个是一个数组,其中包含一个元素,即
{“test”:1}
对象,而第二个是
{“test”:1}
对象本身


因此,使用第一个可以
c[0]。test
,而使用第二个可以
c.test

第一个是一个数组,其中包含一个元素,即
{“test”:1}
对象,而第二个是
{“test”:1}
对象本身


因此,使用第一个c可以
c[0]。test
,而使用第二个c可以
c.test

第一个c是一个包含对象的数组,第二个c是一个对象


在JavaScript中,一切都是一个对象,所以Firebug说它们都是对象。要从第一个c获取test属性,必须引用数组的第一个元素(即实际对象),因此
c[0]。test
将返回1。如果需要知道c是否是数组(实例),请尝试在Firebug控制台中键入
c instanceof Array
,然后运行它(返回
true
)。要验证数组也是对象,请对对象的实例执行相同的操作(返回
true
)。

第一个c是包含对象的数组,第二个c是包含对象的数组


在JavaScript中,一切都是一个对象,所以Firebug说它们都是对象。要从第一个c获取test属性,必须引用数组的第一个元素(即实际对象),因此
c[0]。test
将返回1。如果需要知道c是否是数组(实例),请尝试在Firebug控制台中键入
c instanceof Array
,然后运行它(返回
true
)。要验证数组也是对象,请对对象的实例执行相同的操作(返回
true
)。

“Firebug说它们都是对象…”它们都是对象。正如Darin所说,第一个是一个数组(它是一个对象),包含一个元素,这是一个具有属性
test
的对象。第二个只是一个对象(具有属性
test
)相反,您会立即看到差异。:)在JavaScript中,几乎所有东西都是对象。与“真实”编程语言不同,它们中只有少数具有显式类型(例如数字、字符串),大多数被视为“通用”对象。“Firebug说它们都是对象…”它们都是对象。正如Darin所说,第一个是一个数组(它是一个对象),包含一个元素,这是一个具有属性
test
的对象。第二个只是一个对象(具有属性
test
)相反,您会立即看到差异。:)在JavaScript中,几乎所有东西都是对象。与“真实”编程语言不同的是,它们中只有少数具有显式类型(例如数字、字符串),大多数被视为“通用”对象。