循环数组有几种方法?

栏目: JavaScript · 发布时间: 6年前

内容简介:最简单的一种,也是使用频率最高的一种,虽然性能不弱,但仍有优化空间使用临时变量将长度缓存起来,避免重复获取数组长度,当数组较大时优化效果才会比较明显,

循环数组有几种方法?

第一种: 普通for循环

for( i=0; i<arr.length;i++){ }复制代码

最简单的一种,也是使用频率最高的一种,虽然性能不弱,但仍有优化空间

第二种: 优化版for循环

for(i=0,len=arr.length;i<len;i++){ }复制代码

使用临时变量将长度缓存起来,避免重复获取数组长度,当数组较大时优化效果才会比较明显, 这种方法基本上是所有循环遍历方法中性能最高的一种

第三种: forEach循环

arr.forEach(item=>{ })复制代码

数组自带的forEach循环,使用频率较高,实际上性能比普通for循环弱

第四种: forEach变种

Array.prototype.forEach.call(arr,item=>{ })复制代码

因为forEach是Array自带的,对于一些非这种类型的,无法直接使用(如NodeList), 所有才有了这个变种,使用这个变种可以让类似的数组拥有forEach功能

第五种: for in 循环

for( var i in arr){ }复制代码

在众多循环方式种,它的效率是最低的

第六种: map 遍历

arr.map(item=>{ })复制代码

使用起来优雅,但实际效率不如forEach

第七种: for of 遍历(ES6 support)

for( let i of arr){ }复制代码

es6中用到的,性能好于for in,但仍比不上普通for循环


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Refactoring

Refactoring

Martin Fowler、Kent Beck、John Brant、William Opdyke、Don Roberts / Addison-Wesley Professional / 1999-7-8 / USD 64.99

Refactoring is about improving the design of existing code. It is the process of changing a software system in such a way that it does not alter the external behavior of the code, yet improves its int......一起来看看 《Refactoring》 这本书的介绍吧!

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具