文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>As3.0中的for…in语句和for each…in语句

As3.0中的for…in语句和for each…in语句

时间:2010-08-03  来源:luochaoboy

two

1. 在数组中保存一百万个数据

var testArr:Array = new Array();
for(var i:Number = 0; i < 1000000; i++)
{
    testArr.push(i);
}


//for花费260毫秒
var len:Number = testArr.length;
for(var j:Number = 0; j < len; j++)
{
    testArr[j]++;
}
//for ... in花费8000毫秒
for(var k:String in testArr)
{
    testArr[k]++;
}
//for each ... in花费58毫秒
for each (var m:Number in testArr)
{
    m++;
}

经 过多次测试,for 循环平均260毫秒(不预存数组长度平均400毫秒),for … in 循环平均8000毫秒,for each … in 循环58毫秒!!所以应该尽量避免 for … in ,多用 for each … in ,用for循环的话最好预存数组长度(var len:Number = testArr.length;)。
  Object的情况,for … in 平均560毫秒,for each … in 平均8毫秒。
    var testObj:Object = new Object();
    for(var i:Number = 0; i < 100000; i++)
   {
       testObj[i] = i + 1;
   }
    //for ... in    读取标签    560毫秒
    for(var j:String in testObj)
   {
      testObj[j]++;
    }
   //for each ... in    直接读值    8毫秒
   for each(var k:Number in testObj)
  {
       k++;
  }

结论:

    for each...in语句的速度比for...in语句要快得多,如果有可能,还是先选择for each...in

参考文献:

http://www.soshow.org/html/61/n-361.html

相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载