Javascript 如何防止基于文本的有条件警报?

Javascript 如何防止基于文本的有条件警报?,javascript,jquery,alert,Javascript,Jquery,Alert,我有以下场景,需要防止消息为“hi”时出现警报框。对于所有其他情况,应显示警报框 window.alert = function(text) { if(text=='hi') { console.log('Prevented alert Box'); } else { // Continue displaying Alert. } }; 我不确定这里的方法是否正确。非常感谢您的帮助。提前感谢。您需要保留对旧警报的引用 例如 var old\u alert=win

我有以下场景,需要防止消息为“hi”时出现警报框。对于所有其他情况,应显示警报框

window.alert = function(text) {
  if(text=='hi') {
    console.log('Prevented alert Box');
  } else {
    // Continue displaying Alert. 
  }
};

我不确定这里的方法是否正确。非常感谢您的帮助。提前感谢。

您需要保留对旧警报的引用

例如

var old\u alert=window.alert;
window.alert=函数(文本){
如果(文本=='hi'){
console.log(“阻止的警报框”);
}否则{
旧警报(文本);
}
};
警报(“hi”);

警惕(“那里”)您需要保留对旧警报的引用

例如

var old\u alert=window.alert;
window.alert=函数(文本){
如果(文本=='hi'){
console.log(“阻止的警报框”);
}否则{
旧警报(文本);
}
};
警报(“hi”);

警惕(“那里”)通过执行以下操作保存原始版本的
警报

window.originalAlert = window.alert;
window.alert = function(text) {
  if(text=='hi') {
    console.log('Prevented alert Box');
  } else {
    window.originalAlert(text); 
  }
};
然后像上面那样重新定义警报:

window.originalAlert = window.alert;
window.alert = function(text) {
  if(text=='hi') {
    console.log('Prevented alert Box');
  } else {
    window.originalAlert(text); 
  }
};

通过执行以下操作保存原始版本的
警报

window.originalAlert = window.alert;
window.alert = function(text) {
  if(text=='hi') {
    console.log('Prevented alert Box');
  } else {
    window.originalAlert(text); 
  }
};
然后像上面那样重新定义警报:

window.originalAlert = window.alert;
window.alert = function(text) {
  if(text=='hi') {
    console.log('Prevented alert Box');
  } else {
    window.originalAlert(text); 
  }
};

您正在覆盖默认窗口。嗯,从逻辑上讲,代码应该运行良好。除了方法之外,还有什么问题?试着保存对旧警报的引用,然后砰的一声:)您正在覆盖默认窗口。警报,嗯,从逻辑上讲,代码应该很好。除了方法之外还有什么问题?尝试保存对旧警报的引用,然后砰的一声:)太棒了。。。谢谢,太棒了。。。谢谢(y)