Javascript使用变量作为对象名称

我想使用变量的值来访问对象。

假设我有一个名为myobject的对象。

我想用这个名称填充一个变量,并使用该变量来访问对象。

例:

var objname = 'myobject';
{objname}.value = 'value';
最佳答案
全球:

myObject = { value: 0 };
anObjectName = "myObject";
this[anObjectName].value++;

console.log(this[anObjectName]);

全球:v2

var anObjectName = "myObject";
this[anObjectName] = "myvalue"

console.log(myObject)

本地:v1

(function() {
    var scope = this;

    if (scope != arguments.callee) {
        arguments.callee.call(arguments.callee);
        return false;
    }

    scope.myObject = { value: 0 };
    scope.anObjectName = "myObject";
    scope[scope.anObjectName].value++;

    console.log(scope.myObject.value);
})();

本地:v2

(function() {  
    var scope = this;

    scope.myObject = { value: 0 };
    scope.anObjectName = "myObject";
    scope[scope.anObjectName].value++;

    console.log(scope.myObject.value);    
}).call({});

转载注明原文:Javascript使用变量作为对象名称 - 代码日志