Скажем, что наш script включен в веб-страницу, а предыдущий script (уже выполненный) сделал это:
String.prototype.split = function () {
return 'U MAD BRO?';
};
Итак, строковый метод split
был перезаписан.
Мы хотели бы использовать этот метод, поэтому нам нужно как-то его восстановить. Конечно, мы могли бы просто определить нашу собственную реализацию этого метода и использовать его вместо этого. Однако, ради этого вопроса, позвольте сказать, что мы действительно хотели восстановить реализацию этого метода браузером.
Итак, браузер имеет реализацию метода split
(в собственном коде, я считаю), и эта реализация назначается String.prototype.split
всякий раз, когда загружается новая веб-страница.
Мы хотим эту реализацию! Мы хотим вернуть его в String.prototype.split
.
Теперь я уже придумал одно решение - это взломать, и, похоже, он работает, но у него могут быть недостатки, мне придется немного помериться... Итак, пока вы можете придумать с решением этой проблемы?