我能直接拦截一个被直接调用的函数吗?
- 论坛
- 我能直接拦截一个被直接调用的函数吗?
13 浏览
我能直接拦截一个被直接调用的函数吗?
在这段代码中,我创建了一个名为someFunction的函数。然后修改了Function.prototype.apply和call方法。因此,我不再运行我的函数代码,而是运行我的拦截代码(显示一个警告)。但是,无论是"call"还是"apply"都不能拦截直接方法调用。有可能拦截这个吗?
Function.prototype.call = function(){alert("call");};
Function.prototype.apply = function(){alert("apply");};
function someFunction(){}
window.onload = function(){
someFunction.call(this); //显示call警告
someFunction.apply(this); //显示apply警告
someFunction(); //我如何拦截这个?
}