ScriptObjectMirror
有一个 unwrap
方法,可以接受一个 Global
对象。问题是我不知道如何发送全局对象,因为似乎没有一种容易访问它的方式。这意味着我总是得到镜像而不是原始对象(从 ScriptObjectMirror.class
的反编译代码中看到):
public static Object unwrap(Object obj, Object homeGlobal) {
if(obj instanceof ScriptObjectMirror) {
ScriptObjectMirror mirror = (ScriptObjectMirror) obj;
return mirror.global == homeGlobal ? mirror.sobj : obj;
} else {
return obj instanceof JSONListAdapter?((JSONListAdapter)obj).unwrap(homeGlobal):obj;
}
}
如何传递正确的全局对象?