gpt4 book ai didi

javascript - 在不使用 eval 的情况下将类型存储在变量中时创建对象实例

转载 作者:行者123 更新时间:2023-11-30 13:17:03 25 4
gpt4 key购买 nike

我有一堆用 javascript 编写的对象,代表高级可重用控件。这些控件作为具有类型属性的 div 放置在页面中的某处。选择这些很容易,但创建适当的 javascript 对象并将所选节点传递给适当类型的 init 函数就没那么直接了。我试图避免按照 'new ' + controlType + '(' + selector + ')' 的方式构建字符串,然后对其调用 eval。

最佳答案

如果每个构造函数都是全局的,您可以通过 window 对象(全局对象)显式访问它们:

var instance = new window[controlType](selector):

否则我建议为构造函数创建一个“命名空间”

var types = {
'TypeA': TypeA,
'TypeB': TypeB,
//...
};

和上面一样做。

关于javascript - 在不使用 eval 的情况下将类型存储在变量中时创建对象实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11667160/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com