我有一个复杂的 javascript 对象,它是由一些第三方工具生成的,看起来像这样(在 Chrome 开发人员工具观察面板内):
我有兴趣阅读Object的那些text
和value
属性。i
我以前从未见过这样<function scope>
的事情。在这种情况下,
如何从Chrome 开发人员工具的Watch面板中
<function scope>
的Closure访问值?
还是不可能?
我有一个复杂的 javascript 对象,它是由一些第三方工具生成的,看起来像这样(在 Chrome 开发人员工具观察面板内):
我有兴趣阅读Object的那些text
和value
属性。i
我以前从未见过这样<function scope>
的事情。在这种情况下,
如何从Chrome 开发人员工具的Watch面板中
<function scope>
的Closure访问值?
还是不可能?
闭包是一种特殊的对象,它结合了两件事:一个函数,以及创建该函数的环境。环境由创建闭包时在范围内的任何局部变量组成。
资料来源: MDN 闭包
您看到的i
对象是在过去的某个时间点创建的,而您暂停的函数是在创建该对象的同一个外部函数中创建的。当内部函数访问外部函数的变量时,会创建一个闭包来“记住”它们。
您不能直接访问已关闭的变量。
您可以像这样更改日期值:
(在 Chrome 版本 88 中确认)