javascript - 为什么js的map方法不是对集合的元素按顺序操作?
怪我咯
怪我咯 2017-04-11 12:38:55
0
3
556

下面是我的代码

function disconnectall() {
  server.app.peripherals.map(function(peripheral){
    console.log(peripheral.id);
    peripheral.disconnect(function(error){
      if(error){
        console.log(error);
      }else{
      console.log("disconnect  " + peripheral.id);}
    })
  });
}

假设peripherals中包含两个元素,两个元素的ID分别是01,02
那么我理解的这个函数被调用时的输出应该是
01
disconnect 01
02
disconnect 02

但是实际上我得到的输出是
01
02
disconnect 01
disconnect 02

我的问题是map方法的说明中对集合元素进行操作,是不是按顺序的,如果是按顺序的,是不是在一个元素操作结束后再操作下一个元素?

怪我咯
怪我咯

走同样的路,发现不同的人生

全員に返信(3)
刘奇

异步啊。没有阻塞的代码执行的快啊。

いいねを押す +0
左手右手慢动作

01先于02已经说明map是按顺序的了吧

いいねを押す +0
巴扎黑

你好,mdn上的描述为
map calls a provided callback function once for each element in an array, in order, and constructs a new array from the results.
其中in order 说明为按序

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート