1

我有一个简单的数组问题,我无法解决。

示例:http: //jsfiddle.net/8jyUT/

为什么第二个 console.log 不能正确显示数组?

(我在 Chrome 上)

4

2 回答 2

3

它正在记录数组,但它似乎是空的,因为您没有以数字方式填充它(这就是数组的填充方式)。您仍然可以访问name数组的属性,

var albums = new Array();
var album = new Array();
album['name'] = 'This is War';
albums.push(album);

console.log(albums);            
console.log(albums[0].name);​

在 JS 中,任何对象都可以有属性,而数组就是对象。如果您对数组方法或任何数组方法都没有使用数字排序album,那么请使用对象而不是数组:

var albums = [], album = {};
album['name'] = 'Test';
albums.push(album)

console.log(albums);            
console.log(albums[0].name);​
于 2012-04-10T19:43:45.610 回答
0

我能够通过添加来获得要显示的值['name']。我不确定这有多大帮助。如果您检查当前代码,它确实显示它是一个数组,但您需要指定第二个索引才能显示一个值。如果您正在寻找具有更多属性的东西,我建议您使用对象而不是数组。

于 2012-04-10T19:50:58.080 回答