我有一些陣列,我想插入動態多維數組如何插入陣列多維的JavaScript
var multi = [];
var group = 'fruit';
var fruit_name = 'apple';
multi[group][fruit_name].push({'berbiji' : 'ya', 'panen' : '3tahun'});
爲什麼錯誤這樣的「類型錯誤:多[組]是不確定的」
我有一些陣列,我想插入動態多維數組如何插入陣列多維的JavaScript
var multi = [];
var group = 'fruit';
var fruit_name = 'apple';
multi[group][fruit_name].push({'berbiji' : 'ya', 'panen' : '3tahun'});
爲什麼錯誤這樣的「類型錯誤:多[組]是不確定的」
您正在嘗試使數組像對象一樣工作。如果你想使你的代碼的工作,比你應該寫這樣的:
var multi = {};
var group = 'fruit';
var fruit_name = 'apple';
multi[group] = {};
multi[group][fruit_name] = [];
multi[group][fruit_name].push({'berbiji' : 'ya', 'panen' : '3tahun'});
是的,它只是我的javascript項目的例子,iam逆境來解決這個問題,它的工作!謝謝! –
鍵(「果實」和「蘋果」)的名稱不是數字,所以它不是一個矩陣(數組的數組)而是一組嵌套對象。
嵌套陣列(鍵的數字):
multiArray = [[
{'berbiji' : 'ya', 'panen' : '3tahun'}]]
]]
multiArray[0][0].panen === '3tahun' // true
嵌套對象(鍵是字符串):
multiObject = {
fruit: {
apple: {'berbiji' : 'ya', 'panen' : '3tahun'}
}
}
multiArray[group][fruit_name].panen === '3tahun' // true
無論哪種方式,嵌套對象或陣列需要發起之前可以分配鍵值。
要跟隨你的榜樣:
var multi = {}
var group = 'fruit'
var fruit_name = 'apple';
multi[group] = {} // same as multi.fruit = {}
multi[group][fruit_name] = {'berbiji' : 'ya', 'panen' : '3tahun'}
multi.fruit.apple.panen === '3tahun' // true
指數只能在陣列 – Mahi
嘛整數,這是一個哈希,而不是陣列。 – Mritunjay