Вы не можете. (Существует ограниченный способ сделать это, но он довольно ограничен и не поддерживает магию, о которой bobince говорит о .)
eval
- это не настоящая функция JavaScript, по крайней мере, в одной крупной реализации (JScript IE, по крайней мере, не через IE7; еще не тестировал новую версию IE8), так что сразу начнете работать в беду, потому что вы не сможете вызвать оригинал через apply
(не то, что действительно имеет значение для eval
).
Недавняя спецификация ECMAScript 5 специально запрещает переопределение eval
в строгом режиме (не то, что вы используете строгий режим там), что заставляет меня подозревать, что очень веские причины для того, чтобы не переопределять его.