gpt4 book ai didi

javascript - 使用 new window[] 创建静态内部函数对象

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

我有一个静态内部函数:

function A() {

}

A.B = function() {

}

我无法使用以下方法创建内部静态函数的函数对象:

new window['A.B'](); //Does not work

在哪里

new window['A'](); //Works

&

new A.B(); //Also works if I create inner static function object directly.

有谁知道如何使用窗口创建静态内部函数对象?

最佳答案

A.B 不是 window 的属性。 Awindow的属性,BA的属性。因此,如果您出于某种奇怪的原因真的想用括号来执行此操作,那就是 new window['A']['B']()

如果你想在基于点下降的同时访问对象的任何属性,那不是内置的。

function descend(obj, path) {
var parts = path.split('.');

for(var i = 0; i < parts.length; i++) {
obj = obj[parts[i]];
}

return obj;
}

// var B = descend(window, 'A.B');
// new B()

关于javascript - 使用 new window[] 创建静态内部函数对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16205784/

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