Chrome调试器不会迭代_.each循环

问题描述 投票:0回答:1

我有一个像这样的JavaScript代码:

_.each(node.readLines, function(line) {
  // Mark read-lines
  start = line;
  that._editor.session.addGutterDecoration(start - 1, 'editor_read_decoration');
  that._gutterDecorations[start - 1] = 'editor_read_decoration';
});

当使用Chrome调试它时,调试器会迭代这个_.each函数的循环,尽管node.readLines有五个元素。它只是停留在_.each,下一步它将在这个_.each声明之后进入下一个声明而不进入它。当然,_.each中的语句是执行的,但是在后台。如果我单击chrome调试器的“step into”或“step over”命令,它没有任何区别。我意识到我总是使用这个_.each函数。如何调试此函数内的语句并遍历node.readLines的所有迭代?

javascript jquery google-chrome debugging each
1个回答
1
投票

如果你使用Step Into,你应该在lodash或underscore.js中进入_.each()的实现。如果它被最小化,那么代码将无法读取。在进入迭代函数之前,你必须在代码中做一些额外的步骤,你也需要在那里使用Step Into

我通常做的调试这样的代码是在回调函数的第一行设置一个断点。

© www.soinside.com 2019 - 2024. All rights reserved.