FWIW (информационный): вы можете переопределить «родные» методы, в некоторых случаях и, по крайней мере, в некоторых браузерах. Firefox позволяет мне сделать это:
document.createElement = function(f) { alert(f); };
Что делает то, что вы ожидаете при вызове. Но весь ваш блок кода выше выдает ошибку, по крайней мере, через Firebug.
Философски, вы должны быть в состоянии сделать это. Вы, конечно, можете, скажем, переопределить методы объекта Array и т. Д. Но методы окна (DOM) не охватываются ECMAScript, и поэтому они, вероятно, могут зависеть от реализации. И, конечно, они таковы из соображений безопасности.