【问题标题】:Error in Overriding alert with console.log function in javascript [duplicate]javascript中使用console.log函数覆盖警报时出错[重复]
【发布时间】:2016-04-13 05:53:20
【问题描述】:

我是 JavaScript 新手。由于某些原因,我需要通过 console.log 函数覆盖 windows.alert 函数。为此,我编写了以下代码,

window.alert        = console.log;
alert('abc'); // gives TypeError : Illegal invocation.

我不知道我在这里做错了什么。据我所知,可以使用另一个函数对象修改 javascript 函数引用。

编辑

许多人对我的问题投了反对票,并给了我类似问题的参考,但是 我的问题不同。我想抑制 jquery 中数据表网格库的警告。这就是为什么我想用 console.log 或其他函数替换 alert 的原因。

【问题讨论】:

    标签: javascript alert overriding console.log


    【解决方案1】:

    希望这应该可行...

    alert("msg");
    
    function alert(msg){
      console.log(msg);
    }
    

    【讨论】:

      【解决方案2】:

      应该这样做

      var alert = (...params) => console.log(...params);
      

      【讨论】:

      • 你能让我理解上面的花哨代码吗?或者你能给我参考一下吗?
      • 它是 ES6。 alert 函数替换了默认的 alert 函数,并且 ...params 确保 log 方法可以采用的任何参数,它都会在 alert 函数中改变它。我确定你知道 log 方法可以接受的不仅仅是一个参数,就像声明的警报函数一样。
      猜你喜欢
      • 2010-12-16
      • 1970-01-01
      • 1970-01-01
      • 2012-07-17
      • 2016-06-03
      • 2011-10-25
      • 2014-11-20
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多