当前位置: 首页 > 面试题库 >

Javascript使用变量作为对象名称

王豪
2023-03-14
问题内容

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

假设我有一个名为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({});


 类似资料:
  • 问题内容: 我正在使用jQuery从DOM中提取项目,并希望使用DOM元素的对象设置属性。 例 如果包含一个元素为“ myId” 的元素,我想拥有一个名为“ myId”的属性。以上给了我。 如何使用JavaScript使用变量来命名对象的属性? 问题答案: 您可以使用以下等效语法:

  • 我希望将变量插入到对象键结构中,但我只得到变量名,而不是变量值。

  • 声明这样的对象时: 它抛出以下错误: 但是,使用任何其他变量名(例如,)都可以正常工作。为什么?

  • 问题内容: 如果我有一个如下所示的javascript对象 我有一个既传递对象又传递属性的函数,像这样 身体会是什么样? 问题答案: 您不需要它的功能-只需使用括号符号即可: 这等于点表示法,除了在使用方括号表示法时也可能来自变量,函数返回值等的事实。 如果需要它的功能,则为: 为了回答下面与原始问题没有直接关系的一些注释,可以通过多个括号引用嵌套对象。如果您有这样的嵌套对象: 您可以访问财产的,

  • 问题内容: 为什么下面的工作? 而这不起作用: 更清楚地说:目前,我无法将CSS属性作为变量传递给animate函数。 问题答案: 是有效的对象文字。该代码将创建一个对象,其属性名为,值为10。以下两项相同: 在ES5及更早版本中,不能在对象文字中使用变量作为属性名称。您唯一的选择是执行以下操作: ES6 将 _ComputedPropertyName_定义为对象文字语法的一部分,这使您可以编写如

  • 如何使用变量作为对象中的名称参数? 电流输出: 我想要实现的输出: