當你訪問一個不存在的數組項,你得到的價值undefined
。您的代碼嘗試將屬性添加到undefined
,這是您無法做到的(您會得到TypeError
)。
將對象添加到您的陣列,您可以添加對象,可能使用一個對象初始化:
var myArray = [];
myArray[0] = {
binary: 'qweqwe',
src: 'qweqwe'
};
myArray[1] = {
binary: 'zxczxc',
src: 'zxczxc'
};
myArray[2] = {
binary: 'asdasd',
src: 'asdasd'
};
console.log(myArray);
實際上,你可以結合那些與數組初始化:
var myArray = [
{
binary: 'qweqwe',
src: 'qweqwe'
},
{
binary: 'zxczxc',
src: 'zxczxc'
},
{
binary: 'asdasd',
src: 'asdasd'
}
];
console.log(myArray);
...這可能會更清晰,並且具有使它更容易重新排序的優點(例如,在源代碼中,如果您需要將它們放入不同的初始順序中)。或者你可以使用push
,以使其更容易重新排序:
var myArray = [];
myArray.push({
binary: 'qweqwe',
src: 'qweqwe'
});
myArray.push({
binary: 'zxczxc',
src: 'zxczxc'
});
myArray.push({
binary: 'asdasd',
src: 'asdasd'
});
console.log(myArray);
任何這些作品中,挑選一個最適合你在做什麼。
爲什麼downvote?我需要幫助,請注意不要downvote沒有... – 2015-03-02 08:33:52
在設置屬性爲對象之前,你應該創建空的對象像這樣myArray [0] = {}; myArray [1] = {}; myArray [2] = {}; – 2015-03-02 08:33:53