我想定义一个这样工作的数组:
myArray[0] = 'Volkswagen'
myArray[0][0] = 'Crossfox'
myArray[1] = 'Ford'
myArray[1][0] = 'Focus'
我可以用手做,但当然不是这样做的。我有一个简单的数组:
arrayVolks = ['Crossfox', 'Up', 'Golf'];
arrayVolks[name] = 'Volkswagen';
我的问题是,我不知道如何用数组和的名称的索引创建第一个数组,然后添加数组。
我在想这样的办法:
var myArray = [ arrayVolks[name]: {arrayVolks} ]
(上面的代码更像是伪代码而不是真正的javascript)
有可能吗?
Thank you in regards
你不能在javascript中创建这样的数组:
myArray[0] = 'Volkswagen'
myArray[0][0] = 'Crossfox'
myArray[1] = 'Ford'
myArray[1][0] = 'Focus'
用Object
代替如何?
var obj = {};
obj['Volkswagen'] = ['Crossfox', 'Up', 'Golf'];
obj['Ford'] = ['Focus'];
// get all brands
console.log(Object.keys(obj));
// print all "Volkswagen"
console.log(obj['Volkswagen']);
console.log(obj.Volskwagen);
锯齿数组是数组的数组。
通过执行myArray[0] = 'Volkswagen'
,您将根数组的第一个元素设置为字符串,因此您已经违反了结构。
另一种数据结构可能会更好,但如果您希望有一个锯齿数组,您可以定义一个结构,其中每个嵌套数组的第一个元素是make,而其他元素将是模型。
var cars = [
['Volkswagen', 'Crossfox'],
['Ford', 'Focus']
];
console.log(cars[0][0]); //Volkswagen
console.log(cars[0][1]); //Crossfox