深入剖析:Object.defineProperty与Proxy结合引发的双重apply执行
本文将详细解释Object.defineProperty和Proxy结合使用时,apply方法为何会执行两次的机制。以下代码片段演示了该问题:
const test = { querySelector() {}};Object.defineProperty(test, "querySelector", { get() { return new Proxy(document.querySelector, { apply(target, thisArgs, args) { console.log('test', thisArgs); return thisArgs.querySelector.apply(document, args); } }); }});// 执行代码test.querySelector("body");
登录后复制
本文来自互联网或AI生成,不代表软件指南立场。本站不负任何法律责任。