ブラウザーで実行されている場合にアラートを発生させる JavaScript コードがありますが、単体テストを実行するときにアラートを発生させたくありません。
私は行を持つことでこれを解決しようとしました
if( allowAlerts === false ){
alert = console.log;
}
しかし、次に実行すると
alert("This bad thing happened");
私は戻ってきます
TypeError: Illegal invocation
アラートを直接再割り当てするのは面倒な解決策であり、他の方法で問題を簡単に解決できますが、これまで違法な呼び出しエラーに遭遇したことがなく、誰かがそれが何を意味するのか説明できることを望んでいました.