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

Chrome debugger does not iterate _.each loop

我有这样的 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 中的语句当然会被执行,但是是在后台执行的。如果我单击 "step into""step over" 命令也没有任何区别 chrome调试器。我意识到我总是使用这个 _.each 函数。 如何调试此函数中的语句并遍历 node.readLines?

的所有迭代

如果你使用Step Into,你应该在lodash或underscore.js中执行_.each()。如果它被最小化,那里的代码将不可读。在它到达迭代函数之前,您必须在该代码中执行一些额外的步骤,并且您还需要在那里使用 Step Into

像这样调试代码,我通常会在回调函数的第一行设置断点。