gpt4 book ai didi

javascript instanceof 从字符串名称获取类型

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:07:36 25 4
gpt4 key购买 nike

假设我有这个(假设名称变量是“receiver”):

if (!(receiver instanceof com.HTMLReceiver)) {
throw new com.IllegalArgumentException(
name + " is not an instance of com.HTMLReceiver.");
}

我想将这段代码分解成一个通用方法,这样我就可以这样调用它:

Helper.checkInstance(receiver, "com.HTMLReceiver");

但我不知道如何将 com.HTMLReceiver 从字符串转换为其实际类型,因此我可以在其上使用 instanceof

有办法吗?

最佳答案

我会这样调用它:

Helper.checkInstance(receiver, com.HTMLReceiver);

这将不允许您打印类型名称(“com.HTMLReceiver”)。

或:

Helper.checkInstance(receiver, com.HTMLReceiver, "com.HTMLReceiver");

您在打印中使用用户字符串。

注意同一个类型可以有多个类型名

var foo = com.HTMLReceiver;

foocom.HTMLReceiver 是同一事物的名称。

JavaScript 本身无法从一个类型转到另一个类型名称。

如果你只传入String,我认为唯一通用的解决方案是eval。

关于javascript instanceof 从字符串名称获取类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2901928/

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