Can I declare a multidimensional array in Javascript as follows:
var linkArray = new Array(3);
linkArray[0][0] = 'boothsize_link';
linkArray[0][1] = true;
linkArray[0][2] = false;
linkArray[1][0] = 'enkfur_link';
linkArray[1][1] = true;
linkArray[1][2] = false;
linkArray[2][0] = 'enklight_link';
linkArray[2][1] = true;
linkArray[2][2] = false;
Is this valid?
No this is not valid, you have to initialize each subarray as well:
var linkArray = new Array(3);
linkArray[0] = [];
linkArray[0][0] = 'boothsize_link';
linkArray[0][1] = true;
linkArray[0][2] = false;
etc
In general, array initializers are much easier to write using [...]
literals:
var linkArray = [
['boothsize_link', true, false],
['enkfur_link', true, false],
etc
]
Is this valid?
Yes, that's valid JavaScript syntax (apart from the typo flase
, which will be an undefined variable not a boolean value as expected).
Will it throw an exception?
Yes. By assigning a new, empty array with a lenght of 3 to linkArray
does not make the item arrays to whose properties you can assign something. linkArray[0]
is undefined
, and linkArray[0][0]
will throw an error. You would need to call
linkArray[0] = new Array(3);
before, and the same for linkArray[1]
and linkArray[2]
(better be done in a loop).
Or you just use array literals , which are the standard method to declare arrays:
var linkArray = [
['boothsize_link', true, false],
['enkfur_link', true, flase],
['enklight_link', true, false]
];
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.