window.test = (window.open('')).document.body
通过上面的代码,如何检查这个 window.test 变量的实例?
试过
window.test instanceof HTMLElement | Document | Window
一切都只返回 false。不确定如何检查 instanceOf 。谁能帮我解决这个问题吗?
您绝对不想在这里使用 按位 OR (
|
) 运算符!
您无法将多个值传递给
instanceof
。它是用来比较两件事的。
您需要获取您的值,然后使用
instanceof
运算符测试每个值。
const result = window.test instanceof HTMLElement || window.test instanceof Document | window.test instanceof Window
您可以使用数组在循环中执行此操作:
const result = [HTMLElement, Document, Window].some(classValue => window.test instanceof classValue);