标签:
这段时间一直再学习《高性能javascript》这本书,在这里记录一些学习心得和笔记。。。
循环迭代之“Duff‘s Device”优化迭代次数在1000以上的循环。
函数如下:
1 function duff(items) { 2 if(items && items.length) { 3 var l = items.length, i = l % 8; 4 while(i) { 5 console.log(items[-- l]); 6 i --; 7 } 8 i = Math.floor(items.length/8); 9 while(i) { 10 console.log(items[-- l]); 11 console.log(items[-- l]); 12 console.log(items[-- l]); 13 console.log(items[-- l]); 14 console.log(items[-- l]); 15 console.log(items[-- l]); 16 console.log(items[-- l]); 17 console.log(items[-- l]); 18 i --; 19 } 20 } 21 } 22 23 duff([1,2,3,4,5,6,7,8,9,10]);
函数执行后控制台输出:10 9 8 7 6 5 4 3 2 1
迭代次数在1000以内,性能提升很少。但是超过1000次deff函数执行效率明显提升。
标签:
原文地址:http://www.cnblogs.com/xxiong1989/p/4813424.html