比较(Object,Array,Dictionary)读取元素的效率

等号表示约等于。
结论 Array > Object = Dictionary

测试了下

  private function initialized():void
  {
   for(var i:int=0;i<10000000;i++)
   {
    _arr.push(i);
    _dict[i]=i;
    _object[i]=i;
   }
   
   var t0:int = getTimer();
   
   for(var m:int=0;m<10000000;m++)
   {
    _arr[m];   //974 ms
//    _dict[m];  //1159 ms
//    _object[m]; //1211 ms
   }
   
//   for each(var a:int in _arr)
//   {
//    a;//1135 ms
//   }
   
//   for each(var a:int in _dict)
//   {
//    a;//1373 ms
//   }
   
//   for each(var a:int in _object)
//   {
//    a;//1622 ms
//   }
   
   trace("arr  time: "+(getTimer()-t0));
  }

本以为哈希最快,结果居然是数组最快

后来群里

阿伍

结论是存取删除等一系列操作平均object最快
阿伍
部分操作array快。
阿伍
但是基本可以忽略。

发表评论

电子邮件地址不会被公开。 必填项已用 * 标注

*

您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>