typeof arg === 'string' && arg.includes('debugger'))) { return function () {}; } return new originalFunction(...args); }; 这个替代方法首先将原始 Function 构造函数保存在一个变量中,然后用一个自定义函数替换它。 这个自定义函数检查传入的参数,如果发现包含 debugger 的字符串,就返回一个空函数。 否则,它将使用原始 Function 构造函数创建新的函数。 这种方法应该可以屏蔽上述代码片段中的 debugger 调用。 但请注意,这种方法可能会影响其他使用 Function 构造函数的代码,因此请确保充分测试其对网站的影响。"> typeof arg === 'string' && arg.includes('debugger'))) { return function () {}; } return new originalFunction(...args); }; 这个替代方法首先将原始 Function 构造函数保存在一个变量中,然后用一个自定义函数替换它。 这个自定义函数检查传入的参数,如果发现包含 debugger 的字符串,就返回一个空函数。 否则,它将使用原始 Function 构造函数创建新的函数。 这种方法应该可以屏蔽上述代码片段中的 debugger 调用。 但请注意,这种方法可能会影响其他使用 Function 构造函数的代码,因此请确保充分测试其对网站的影响。"> typeof arg === 'string' && arg.includes('debugger'))) { return function () {}; } return new originalFunction(...args); }; 这个替代方法首先将原始 Function 构造函数保存在一个变量中,然后用一个自定义函数替换它。 这个自定义函数检查传入的参数,如果发现包含 debugger 的字符串,就返回一个空函数。 否则,它将使用原始 Function 构造函数创建新的函数。 这种方法应该可以屏蔽上述代码片段中的 debugger 调用。 但请注意,这种方法可能会影响其他使用 Function 构造函数的代码,因此请确保充分测试其对网站的影响。">
setInterval(() => {
(function(a) {
return (function(a) {
return (Function('Function(arguments[0]+"' + a + '")()'))
})(a)
})('bugger')('de', 0, 0, (0, 0));
}, 1000);
换成万能的
const originalFunction = Function;
Function = function (...args) {
if (args.some(arg => typeof arg === 'string' && arg.includes('debugger'))) {
return function () {};
}
return new originalFunction(...args);
};
这个替代方法首先将原始 Function 构造函数保存在一个变量中,然后用一个自定义函数替换它。
这个自定义函数检查传入的参数,如果发现包含 debugger 的字符串,就返回一个空函数。
否则,它将使用原始 Function 构造函数创建新的函数。
这种方法应该可以屏蔽上述代码片段中的 debugger 调用。
但请注意,这种方法可能会影响其他使用 Function 构造函数的代码,因此请确保充分测试其对网站的影响。

var _constructor = constructor;
Function.prototype.constructor = function(s) {
if (s == "debugger"){
return function(){};
}Function.prototype.constructor_=Function.prototype.constructor
Function.prototype.constructor=function(){
if(arguments && typeof(arguments[0])=='string'){
if(arguments[0] === 'debugger'){
return ""
}
}
return Function.prototype.constructor_.apply(this,arguments)
}
return _constructor(s);
}
或者
Function.prototype.constructor_=Function.prototype.constructor
Function.prototype.constructor=function(){
if(arguments && typeof(arguments[0])=='string'){
if(arguments[0] === 'debugger'){
return ""
}
}
return Function.prototype.constructor_.apply(this,arguments)
}