微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

watch 函数表达式影响 Chrome devtool 中的调试

如何解决watch 函数表达式影响 Chrome devtool 中的调试

来自 Chrome Devtool 示例 https://googlechrome.github.io/devtools-samples/debug-js/get-started

inputsAreEmpty 函数的第一行添加断点时,inputsAreEmpty() 到 Watch 中,watch 中的 inputsAreEmpty()调用

如果将日志插入到inputsAreEmpty函数中,日志会打印更多次,为什么会发生这种情况?

解决方法

如果您的意思是将 inputsAreEmpty() 作为 Watch 表达式,那么只要 Watch 需要更新其显示,就会对表达式求值(调用 inputsAreEmpty)。如果您在 inputsAreEmpty 中放置断点,Watch 需要在遇到断点时更新其显示——这意味着调用 inputsAreEmpty,这将命中断点,依此类推.

一般来说,最好不要在 Watch 表达式中调用函数(尽管也有例外)。但是你绝对需要避免在有断点的 Watch 表达式中调用函数,因为它会造成上面的恶性循环。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。