我使用的是镀铬59(问题也在chrome 62中复制)。 当我停在某个if条件断点时, 我在尝试更改本地变量值之前进行下一步(F10),即使更改已更新(我在控制台中看到更新的值),if-condition仍在考虑出于某种原因的上一个(原始)值。 看起来在更改之后,不会重新评估变量。
有人熟悉这个问题吗?我不确定这是浏览器错误还是某些Chrome设置配置。
以下是重现的示例:
的的index.html
<html>
<body>
<h2>JavaScript chrome issue test</h2>
<button type="button" onclick="myFunction()">Stop on debug</button>
<script src="myScript.js"></script>
</body>
</html>
的 myScript.js:
function myFunction() {
let test = 'sss';
if (test) { // stop here in debug, and change test var to null in the console.
console.log ('yes');
} else {
console.log ('no');
}
}
这里还有一个重现的链接: http://jsfiddle.net/Bnuy7/2582/
注意:如果您使用调试器它将正常工作,您需要在if条件行中断,而不使用&#39; debugger&#39;命令。
很高兴为此提供任何帮助。 感谢。