Javascript _u.each()的实际行为如何?

Javascript _u.each()的实际行为如何?,javascript,underscore.js,each,Javascript,Underscore.js,Each,我在对象上有一个双嵌套循环,每个对象都有u.each()。根据第二个循环执行时间的不同,结果会有很大的不同。以下是片段: var _ = require('underscore'); var user = { "data1": [1,2,3], "data2": ["a","b","c"] }; var data={}; _.each(user,function(element,index){ console.log(element); _.each(element,fun

我在对象上有一个双嵌套循环,每个对象都有u.each()。根据第二个循环执行时间的不同,结果会有很大的不同。以下是片段:

var _ = require('underscore');

var user = {
  "data1": [1,2,3],
  "data2": ["a","b","c"]
};

var data={};
_.each(user,function(element,index){
  console.log(element);

  _.each(element,function(element,index){
    console.log(">>"+element);  // case 1
    //setTimeout(function(){ console.log(">>"+element); },2000);  // case 2
  });
});
案例1是我想要实现的:在移动到data2并显示data2的元素之前,显示data1的元素。 如果在显示dataX元素时引入延迟(注释案例1/未注释案例2),则dataX将在最后一起显示

我的印象是,每个(元素,函数)总是在函数执行结束后再移动到下一个元素,但情况似乎并非如此


非常感谢-C.

\每个
都是同步的。它一直运行到末尾。
的可能重复。每个
都是同步的。它一直延伸到末端。可能是