I have a dynamically-created list of strings called ‘variables’. I need to use these strings as the instance variables for an array of JavaScript objects.
var objectsArr = [];
function obj(){};
for (var i=0; i<someNumberOfObjects; i++ ) {
...
objectsArr[i] = new Object();
for (var j=0; j<variables.length; j++) {
objectArr[i].b = 'something'; //<--this works, but...
//objectArr[i].variables[j] = 'something'; //<---this is what I want to do.
}
}
The commented-out line shows what I am trying to do.
You can use the bracket syntax to manipulate the property by name:
In other words, get the object from
objectArrat indexithen find the field with namevariables[j]and set the value of that field to'something'.In general terms, given object
o:You can set the property by name:
And access it in the usual way: