How to make a variable addressable by name as string in JavaScript?
Is there a way to convert variable names to strings in javascript? To be more specific:
var a = 1, b = 2, c = 'hello';
var array = [a, b, c];
Now at some point as I go through the array, I need to get variable names (instead of their values) as strings - that would be 'a' or 'b' or 'c'. And I really need it to be a string so it is writeable. How can I do that?
Solution 1:
Use a Javascript object literal:
var obj = {
a: 1,
b: 2,
c: 'hello'
};
You can then traverse it like this:
for (var key in obj){
console.log(key, obj[key]);
}
And access properties on the object like this:
console.log(obj.a, obj.c);
Solution 2:
What you could do is something like:
var hash = {};
hash.a = 1;
hash.b = 2;
hash.c = 'hello';
for(key in hash) {
// key would be 'a' and hash[key] would be 1, and so on.
}