Kivylius
Kivylius

Reputation: 6547

Dynamic object keys

Im trying to create an dynamic object with dynamic keys eg:

var test = "test";
var obj = {
    test:"bananas"
}

But I get an error: Uncaught SyntaxError: Unexpected token + Is this not allowed? anyway to do this? It's a must in my software.

Upvotes: 2

Views: 358

Answers (2)

Metalstorm
Metalstorm

Reputation: 3232

obj[test + "ing"] = "bananas";

In relation to your edit:

var test = "test";
var obj = {};
obj[test] = "bananas";

or shorter:

var obj={[test]:"bananas"};

I normally wrap this in something like:

Object.expander = function(name, value, obj)
{
    obj = obj || {};
    obj[name] = value;
    return obj;
};

var obj = Object.expander(test, "bananas");

Upvotes: 4

PA.
PA.

Reputation: 29339

you can't this way

try this instead

   obj["testing"] = "bananas"

Upvotes: -1

Related Questions