将变量作为对象路径传递

很抱歉,这是基本问题-这是较大代码的简化版本,我似乎无法解决此问题-

我有一个JS创建的博客,将我的博客详细信息存储在一个对象中,并使用这些详细信息填充HTML,这使我保持了DRY原则。

我发现的问题是我似乎无法使用变量来完成对象路径-

创建对象>>

var objectExample = {

    one: [{

        method: function(x,y){
            console.log(`${x} ${y}`);
        }

    }]

}


var blockThing = document.querySelector('.block');

var name = 'one';
var sign = 0;

x = 'something new';
y = 'another new thing';

blockThing.addEventListener('click',function(){
    objectExample.name[sign].method(x,y);
});

我不确定为什么上面的内容不能像我写的那样工作

blockThing.addEventListener('click',function(){
        objectExample.one[0].method(x,y);
    });

即不使用变量-那么它确实可以工作。

如果这是一个非常基本的问题,请原谅,我一直试图解决这个问题,这是我的一个大例子。

谢谢您的帮助

jiro867 回答:将变量作为对象路径传递

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/3164680.html

大家都在问