Javascript Set vs. Array performance

后端 未结 5 1744
小鲜肉
小鲜肉 2020-11-27 14:03

It maybe because Sets are relatively new to Javascript but I haven\'t been able to find an article, on StackO or anywhere else, that talks about the performance difference b

5条回答
  •  挽巷
    挽巷 (楼主)
    2020-11-27 14:12

    console.time("set")
    var s = new Set()
    for(var i = 0; i < 10000; i++)
      s.add(Math.random())
    s.forEach(function(e){
      s.delete(e)
    })
    console.timeEnd("set")
    console.time("array")
    var s = new Array()
    for(var i = 0; i < 10000; i++)
      s.push(Math.random())
    s.forEach(function(e,i){
      s.splice(i)
    })
    console.timeEnd("array")
    

    Those three operations on 10K items gave me:

    set: 7.787ms
    array: 2.388ms
    

提交回复
热议问题