我正在编写Chrome扩展程序,我希望能够根据条件禁用JavaScript。所以页面加载,一堆JavaScript运行,如果我的条件满足,那么我想禁用所有JavaScript。那可能吗?我们需要终止/停止当前运行的脚本。
如果我的chrome扩展程序的脚本也被停止/禁用,我也不会太在意。但如果我能保持javascript运行,那就太好了。
由于
答案 0 :(得分:0)
实现这一目标的一种方法是定义一个包含所有函数的对象,然后从内存中删除所述对象。
var obj = {
first : function(){
return "1";
},
second : function(){
return "2";
}
};
console.log( obj.first() ); // "1"
console.log( obj.second() ); // "2"
delete obj; // will remove from memory thus disabling it.
//will now return error
console.log( obj.first() );
console.log( obj.second() );
请注意,如果你在var obj范围之外声明一个指向obj的var,即使在使用delete之后它仍然存在。
var obj = {
first : function(){
return "1";
},
second : function(){
return "2";
}
};
var stillAlive = obj;
delete obj; // will it remove from memory?
//Ha gotcha i'm still here.
console.log( stillAlive.first() );
console.log( stillAlive.second() );