I need to pass an array of objects to a php page as part of a larger data structure. I am trying to replicate this structure in JavaScript and pass it via json.
The arrays keys in php have been set as names which I require later in the process.
I know JavaScript doesn't use associated arrays and arrays in JavaScript are essentially objects but documentation suggests I should be able to use named keys.
If this is the case I should also be able to use variables as named keys by using a different syntax.
Can someone then please show me what I am doing wrong?
Example 1: numeric keys (works)
var dataTargets = [];
var obj = {
'test': 'test'
};
dataTargets["0"] = obj;
alert(JSON.stringify(dataTargets));
Example 2: named keys (fails)
var dataTargets = [];
var obj = {
'test': 'test'
};
dataTargets["test"] = obj;
alert(JSON.stringify(dataTargets));
//outputs []
Example 3: variable keys (fails)
var dataTargets = [];
var dtname = "test";
var obj = {
'test': 'test'
};
dataTargets[dtname] = obj;
alert(JSON.stringify(dataTargets));
//outputs []
JSON.stringify()returns an array with out elements set? What is expected result?