您的位置:首页 > 运维架构 > 网站架构

corosycn&pacemaker的高可用web集群

2016-01-05 22:08 387 查看
用 for each … in 语法遍历数据是个好东西,好像是AS3新增的(AS3以前的俺不熟),不仅对XML,只要是列表数据类型的均可遍历:

as 代码

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毫秒。

as 代码

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++;   

}  
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: