2014-04-15
無効化されたconsole.logをもとに戻す
javascriptはプロトタイプ型なので、ネイティブなメソッドも上書きして無効化できる。
デバック出力をまとめて停止したり、解析できなくしたりすることに使われる。
console.log = function(){}
では、ネイティブのメソッドにもどすにはどうすればいいのだろうか。
答えはシンプルにdelete関数で消してあげれば、オーバーライドされたメソッドが消えて、初期化されネイティブのプロトタイプのメソッドにもどる。
delete console.log
じゃあ、プロトタイプも無効化された場合はどうなるか
console.__proto__.log = function(){}
delete console.log
ではもとにもどらないが
delete console.__proto__.log
プロトタイプもdeleteしてしまえばいい。
じゃあ、deleteメソッドが無効化された場合は?
var original_log = Object.getPrototypeOf(console).log;
でネイティブ関数を呼び出せるらしい。
が、そもそもdeleteは消せない...。というかdeleteは演算子だった!
トラックバック - http://d.hatena.ne.jp/IT7C/20140415/1397494773
リンク元
- 1805 https://www.google.co.jp/
- 526 http://www.google.co.jp/url?sa=t&rct=j&q=&esrc=s&source=web&cd=12&ved=0CGkQFjAL&url=http://d.hatena.ne.jp/IT7C/20121217/1355707578&ei=A2JMU4PROpWF8gX6r4LoBQ&usg=AFQjCNHPj3AjckqVB6R4bMcqPgHscJpJMA
- 214 http://www.google.co.jp/url?sa=t&rct=j&q=&esrc=s&source=web&cd=2&ved=0CDIQFjAB&url=http://d.hatena.ne.jp/IT7C/20130616/1371379856&ei=X4RMU6vZH5GekgXIiIAI&usg=AFQjCNH5wezLLS20FPe9KfaalS6HNMy9wQ&bvm=bv.64764171,d.dGI
- 154 http://www.google.co.jp/url?sa=t&rct=j&q=&esrc=s&frm=1&source=web&cd=5&ved=0CEYQFjAE&url=http://d.hatena.ne.jp/IT7C/20101003/1286086401&ei=K35MU7e_L4Hf8AWUmYCwBA&usg=AFQjCNHvnauo8gW-Hk7gsUwbEyIXeiyL5A
- 124 http://www.google.co.jp/url?sa=t&rct=j&q=&esrc=s&source=web&cd=3&cad=rja&uact=8&ved=0CDYQFjAC&url=http://d.hatena.ne.jp/IT7C/20130920/1379614610&ei=34JMU966Nozf8AX_w4HAAQ&usg=AFQjCNFmzpgm6ab7bj9eX_rkg8JWYLzaAw&bvm=bv.64764171,d.dGc
- 103 http://www.google.co.jp/url?sa=t&rct=j&q=&esrc=s&source=web&cd=4&ved=0CEUQFjAD&url=http://d.hatena.ne.jp/IT7C/20100810/1281448716&ei=rZZMU4nLC9Lj8AXWs4KwCA&usg=AFQjCNFOmkfpS89PE_gzFoAPIzBZ2CqcDw&sig2=REbbWmpJrsyNo-Lt4xhRWQ&bvm=bv.64764171,d.dG
- 87 https://www.google.com/
- 85 http://www.google.co.jp/url?sa=t&rct=j&q=&esrc=s&source=web&cd=5&ved=0CEIQFjAE&url=http://d.hatena.ne.jp/IT7C/20100815/1281853069&ei=maFMU-iUBYikyQG5hoCwBw&usg=AFQjCNHYOMe87gAOsRCU5zOg_OyKc9Byhg&bvm=bv.64764171,d.aWc
- 54 http://www.google.co.jp/url?sa=t&rct=j&q=&esrc=s&source=web&cd=6&ved=0CEwQFjAF&url=http://d.hatena.ne.jp/IT7C/20140112/1389511343&ei=v-1MU6yXH4SJlAX4moGgCQ&usg=AFQjCNESi9XpVixJaLRTklkU6NS-RsnEXA&bvm=bv.64764171,d.dGc&cad=rjt
- 42 http://www.google.co.jp/url?sa=t&rct=j&q=&esrc=s&source=web&cd=7&ved=0CGcQFjAG&url=http://d.hatena.ne.jp/IT7C/20130925/1380114553&ei=YbdMU7bQFZW68gWy7oGoCg&usg=AFQjCNHpBAmHMyHkJtujRMYXv-ohLCo-dw&sig2=MB41VUDWDcraE6KeFs8fFQ&bvm=bv.64764171,d.dG