Я делаю некоторый анализ некоторых Javascript и хочу оставить включенным javascript, но отключить все окна alert () и перенаправления self.location.
В настоящее время я использую прокси-сервер регулярных выражений, но это похоже на излишество.
Я могу переопределить некоторые нативные методы, но не другие в Firefox, т.е.
window.alert = function('') { return null; }
alert('test!') // works as expected
Однако, когда я пытаюсь аналогичным образом перезаписать window.location = (который является псевдонимом для вызова метода window.assign ()), он не работает
window.location.assign = function('') { return null; }
window.location.assign('#') // redirects :(
Я попытался установить Window.prototype.location.assign, но получаю исключение «Невозможно изменить свойства WrappedNative».
Какие-либо альтернативы NoScript для мелкозернистого управления JS, или можно перезаписать определенные методы Native JS?