On 23 Mai, 10:48, Robert Mark Bram <robertmarkb...@gmail.comwrote:
I have some code to iterate through nested associative arrays.
For the first thing: There are no such things as "associative arrays"
in JavaScript. However user-defined object properties can be used as
such, just as you are doing.
var dealers = new Array();
Since object properties have nothing to do with JavaScript arrays, it
is better to create a new basic Object instead of an Array:
var dealers = new Object();
or if using an object literal
var dealers = {};
var dealer1 = new Array();
dealer1["label"] = "Jefferson Ford Pty Ltd";
dealer1["address"] = "215-217 Normanby Rd South Melbourne VIC 3205";
dealers["dealer1"] = dealer1;
var dealer2 = new Array();
dealer2["label"] = "Freeway Ford";
dealer2["address"] = "290 South Gippsland Hwy Cranbourne VIC 3977";
dealers["dealer2"] = dealer2;
If you actually hardcoding this information it is probably simpler to
use full object literals:
var dealers = {
dealer1: {
"label": "Jefferson Ford Pty Ltd",
"adress": "215-217 Normanby Rd South Melbourne VIC 3205"
},
dealer2: {
"label": "Freeway Ford";
"address": "290 South Gippsland Hwy Cranbourne VIC 3977"
}
};
for (dealer in dealers) {
alert(dealer["label"] + " - " + dealer["address"]);
}
for...in returns the property name, not the actual object in the
variable:
for (dealer in dealers) {
alert(dealer);
alert(dealers[dealer]["label"] + " - " + dealers[dealer]
["address"]);
}
Robin