instanceOfString 方法
- String constructorName
判断此 JSAny?
是否为数组构造函数的实例,该构造函数由 constructorName
定义,并在 全局上下文 中查找。
如果 constructorName
包含 '.',该名称将被拆分为几个部分以获取构造函数。例如,library1.JSClass
将涉及从 全局上下文 中检索 library1
,然后从 library1
中检索 JSClass
以获取构造函数。
如果 constructorName
为空,或任何部分或构造函数不存在,则返回 false。
实现
bool instanceOfString(String constructorName) {
if (constructorName.isEmpty) return false;
final parts = constructorName.split('.');
JSObject? constructor = globalContext;
for (final part in parts) {
constructor = constructor?[part] as JSObject?;
if (constructor == null) return false;
}
return instanceof(constructor as JSFunction);
}