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

时间:2018-01-04 22:18:46

标签: javascript jquery google-chrome debugging each

我有一个像这样的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调试器的"进入" "跳过" 命令,则没有任何区别。我意识到我总是使用这个_.each函数。 如何调试此函数内的语句并遍历node.readLines的所有迭代?

1 个答案:

答案 0 :(得分:1)

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

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