【发布时间】:2020-10-04 03:30:17
【问题描述】:
我正在尝试从一个缩小的站点脚本中读取一个变量,该脚本由一个巨大的匿名函数组成,用于逆向工程。据我了解,通常不可能访问被困在这个闭包中的变量。
(function() {
var af = function (a) { ... }
var ge = function() {
var obj = {};
obj.foo = 'bar';
af(obj);
}
})();
但是,我可以通过在该范围内的一行上放置一个断点来实现。 有没有办法在开发者控制台中通过 Javascript 或其他方式在不修改脚本的情况下重现这一点?
我尝试挂钩Function.prototype.apply,但遇到了无限递归路径。
该脚本重新定义了像 console 这样的全局变量,这让这很烦人。
【问题讨论】:
-
你可以在 Object.prototype 上为
foo定义一个setter。 -
@wOxxOm 谢谢。像魅力一样工作。
标签: javascript debugging google-chrome-devtools reverse-engineering firefox-developer-tools