2012-12-06 79 views
0

即時嘗試構建一個JavaScript矩陣作爲對象。javascript對象拋出異常

我綁:

var variations={}; 
variations["p1088"]["red"]["gen"]=1107; 
variations["p1090"]["red"]["l"]=1288; 

var variations={}; 
variations.p1088.red.gen=1107; 
variations.p1090.red.gen=1288; 

但都拋出一個異常

TypeError: variations.p1090 is undefined 

什麼錯嗎?

回答

2

因爲你不能假定p1088,紅色和gen是對象。此作品:

// short version 
var variations = { p1088: { red: { gen: 1107 } } }; 

// long version 
var varations = {}; 
varations.p1088 = {}; 
varations.p1088.red = {}; 
varations.p1088.red.gen = 1077; 
4

由於錯誤提示,variations.p1090未定義。你從未給它一個價值。

var variations={}; 
variations.p1088={}; 
variations.p1088.red={}; 
variations.p1088.red.gen=1107; 
5

每個子對象都需要聲明。因此,要獲得第一個一組這將是

var variations = {}; 
variations.p1088 = {}; 
variations.p1088.red = {}; 
variations.p1088.red.gen = 1107; 

不過,如果我理解你想要做什麼,我會做變化對象的數組。

var variations = []; 
variations[0] = {name: 'p1088',color:'red',gen:1007}