如何使用变量JS追加对象调用

How do i append an object call with a variable JS

本文关键字:对象 调用 追加 JS 何使用 变量      更新时间:2023-09-26

所以问题是,我有使用window.blah.blah调用的数据,它会根据用户或数据库中的项目吐出信息。

现在我的问题是,我想把window.blah.blah和一个动态附件一起使用,就像window.blah-blah.VARIABLE1 一样

我试过window.blah.blah.instances[variable],但我得到了一个类型错误,说变量的值没有定义(所以如果variable=test1,错误将是typeerror:无法读取未定义的属性"test1"。生成了变量,所以它可以是对应于存储对象的test1-test2。

如果有帮助的话,我将在循环中使用该调用,该调用用于访问具有不同对象名称的存储json-obj。

此外,如果其中一个对象被称为test1,并且我执行window.blah.blah.test1,它会访问该对象,但window.blah.blah.instances[test1]会得到上述错误。

我做错了什么?

也许您要查找的语法是window.blah.blah[VARIABLE1](假设这些废话是对象。)

注意,在窗口中存储数据通常是个坏主意,所以对于以下示例,我将把顶级对象从全局空间(通过window访问)移动到一个局部变量中:

var myObj = {
    blah: {
        blah: {}
    }
};
var fooVar == 'foo';
function getMyDynamicVariable() {
    return "foo"; //really this would by some dynamically generated string
}
//example usage:
myObj.blah.blah[getMyDynamicVariable()];
// OR
myObj.blah.blah[fooVar];
// would be the same as
myObj.blah.blah.foo //(in this exact example, where all functions and variables contain the string 'foo'.)