美文网首页JavaScript 基础与提高
JavaScript 坑与技巧:遍历

JavaScript 坑与技巧:遍历

作者: soojade | 来源:发表于2018-06-16 19:55 被阅读17次

假如要按如下方法遍历一个数组:

let arr = [2, 3, 5, 6, 8];
for(let i=0,len=arr.length;i<len,i++){
  console.log(arr[i];
}

这样每次循环还要和len比较,时间复杂度是O(n+1)。可以使用如下方式:

for(let i=0,item;item=arr[i++];){ // 一定要注意最后面的分号,不要省略
  console.log(item)
}

上面的方法利用了可迭代数据本身的特性,时间复杂度是O(n)。

通过数组arrkeys()方法可以获取一个迭代器对象:item=arr.keys(),不断执行item.next(),可以获得如下结果:

value表示数组的索引,done表示是否遍历完。因此在上面的for循环中,当遍历完数组的之后,返回undefined,结束循环。

相关文章

网友评论

    本文标题:JavaScript 坑与技巧:遍历

    本文链接:https://www.haomeiwen.com/subject/clwbeftx.html