先看一段代码

Document

// 一个普通的数组

var arr =[3,5,2,6];

// 普通的for 循环遍历

for(var i = 0 ; i < arr.length; i++){

console.log(i,"类型:"+typeof i,arr[i]);

}

// 用for in 遍历数组

for(var k in arr){

console.log(k,"类型:"+typeof k,arr[k]);

}

这段代码显示出了 一点 for循环遍历数组 和for in 循环遍历 数组的一点区别:

标准的for循环中的i是number类型,表示的是数组的下标,但是foreach循环中的i表示的是数组的key是string类型。

这还不是坑,只是一点区别。

再看一段代码

Document

// 一个普通的数组

var arr =[3,5,2,6];

// 在数组原型上扩展一个方法

Array.prototype.extend = function(){

console.log("在数组原型扩展一个方法");

}

// 普通的for 循环遍历

for(var i = 0 ; i < arr.length; i++){

console.log(i,"类型:"+typeof i,arr[i]);

}

// 用for in 遍历数组

for(var k in arr){

console.log(k,"类型:"+typeof k,arr[k]);

}

这段代码就是在上边的代码的基础上,为Array做了一下扩充。很简单,只是添加了一个函数。但是我们来看运行会出现了什么情况:

输出的结果中,多出了一行,这一行就是我们扩展的一个函数,不是我们定义在数组中的值。到此这个问题就出来了。

综上所述,用for...in...在通常情况下确实可以正确运行。

但是如果我们在项目采用的是用foreach遍历数组,假设有一天谁不小心自己为了扩展js原生的Array类,或者引入一个外部的js框架也扩展了原生Array。那问题就来了。

所以最好还是用for循环遍历数组

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

html页面遍历数组,JavaScript中利用for循环遍历数组相关推荐

  1. JavaScript中利用for循环遍历数组

    这篇文章主要为大家详细介绍了JavaScript中利用for循环遍历数组,最好不要使用for in遍历,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 先看一段代码 1 2 3 4 5 6 7 8 ...

  2. Vue 中利用 template标签遍历多维数组

    Vue 中利用 template标签遍历多维数组 1. 需求 2. 二维数组内容 3. 列表渲染指令 v-for 4. template 标签 5. 正确的做法 作者:高玉涵 时间:2022.7.20 ...

  3. JavaScript中的属性:如何遍历属性

    JavaScript中的属性:如何遍历属性 在JavaScript中,遍历一个对象的属性往往没有在其他语言中遍历一个哈希(有些语言称为字典)的键那么简单.这主要有两个方面的原因:一个是,JavaScr ...

  4. 北风网ajax,[T8:JavaScript中利用Ajax实现客户端与服务器端通信北风网收费视频讲座.ppt...

    [T8:JavaScript中利用Ajax实现客户端与服务器端通信北风网收费视频讲座 Ajax简介 XMLHttpRequest对象 综合案例 1.HTTP请求 现在,很多浏览器都可以直接从JavaS ...

  5. php 输出数组第一个元素,怎么在php中利用reset() 函数输出数组中的第一个元素

    怎么在php中利用reset() 函数输出数组中的第一个元素 发布时间:2021-01-16 09:37:11 来源:亿速云 阅读:66 作者:Leah 本篇文章给大家分享的是有关怎么在php中利用r ...

  6. python循环展示大写字母_python调用大写函数python中字典的循环遍历的两种方式

    开发中经常会用到对于字典.列表等数据的循环遍历,但是python中对于字典的遍历对于很多初学者来讲非常陌生,今天就来讲一下python中字典的循环遍历的两种方式. 注意: python2和python ...

  7. javascript中的for循环

    使用方法1: for(i=0;i<10;i++) { } 使用方法2:(可以对数据.对象成员等进行遍历) var y = [2, 3, 5];  for (i in y)        docu ...

  8. jquery 遍历java对象_jquery中object对象循环遍历的方法

    一个朋友问对象如何转为数组,当我问他为啥要转得时候,他告诉我,数组可以用js循环遍历,而对象则不可以.其实呢,对象同样可以循环遍历的啊.不用转换也可以循环!说明你对js或者jquery的某些操作不是很 ...

  9. python中字典的循环遍历的方式

    python开发中经常会用到对于字典.列表等数据的循环遍历,但是python中对于字典的遍历对于很多初学者来讲非常陌生,今天就来讲一下python中字典的循环遍历的两种方式. 注意: python2和 ...

最新文章

  1. Maven实战:Maven生命周期
  2. 电脑桌面便签小工具_电脑桌面工作任务提醒软件有哪些?多端同步提醒办公软件试试云便签...
  3. redis系列之数据库与缓存数据一致性解决方案
  4. 十二、linux LED初始化
  5. Codeforces round 1100
  6. mysql5.5以上my.ini中设置字符集
  7. wpf 控件大小随窗体大小改变而改变
  8. Teradata天睿公司推出适用各种部署环境的全球最强分析数据库
  9. dmp只导数据不导结构_今日头条快消食品推广CVR为何高达4.40%?原来DMP定向这么好...
  10. 为应用程序池**提供服务的进程意外终止。进程ID是**。进程退出代码是'0x80'
  11. 爱尚QQ网修改QQ在线机型源码
  12. python读取odb_abaqus通过python从ODB中抽取模型数据和结果数据.pdf
  13. WordPress 5.2中的致命错误恢复模式
  14. MATLAB实现k-means算法(k-均值)对无标签数据进行聚类,并通过肘部法则确定聚类类别
  15. 在VisualBasic6.0中实现0.5数值修约
  16. border渐变 ios_iOS一个方法搞定view渐变色
  17. 零基础学习CANoe Panel(6)—— 开关/显示控件(Switch/Indicator)
  18. 中国大学MOOC课程信息之数据分析可视化一
  19. 晒晒我的厨艺修炼成果
  20. 星汉未来成为 FinOps 产业标准生态联盟首批会员

热门文章

  1. 细数23种设计模式以及Java代码实现
  2. 商超大战解读:1号店与天猫超市,谁更有戏?
  3. 深度学习——GRU单元
  4. 单位社保缴纳明细表_职工社保缴费明细表
  5. dotnet 教你写一个可以搞炸本机所有 WCF 应用的程序方法
  6. code block怎样导入整个文件夹_怎样制作音乐相册?多种风格的背景音乐任你挑...
  7. oppo手机计算机颜色,解开手机屏幕真相,原来OPPO全链路10bit色彩这么强!
  8. python爬取煎蛋美眉
  9. 马斯克反对英伟达并购ARM
  10. 关于 安装ubuntu16.04 和 win10双系统 后 怎样切换系统的问题