先看一段代码
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<script>
// 一个普通的数组
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]);
}
</script>
</body>
</html>
这段代码显示出了 一点 for循环遍历数组 和for in 循环遍历 数组的一点区别:
标准的for循环中的i是number类型,表示的是数组的下标,但是foreach循环中的i表示的是数组的key是string类型。
这还不是坑,只是一点区别。
再看一段代码
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<script>
// 一个普通的数组
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]);
}
</script>
</body>
</html>
这段代码就是在上边的代码的基础上,为Array做了一下扩充。很简单,只是添加了一个函数。但是我们来看运行会出现了什么情况:
输出的结果中,多出了一行,这一行就是我们扩展的一个函数,不是我们定义在数组中的值。到此这个问题就出来了。
综上所述,用for...in...在通常情况下确实可以正确运行。
但是如果我们在项目采用的是用foreach遍历数组,假设有一天谁不小心自己为了扩展js原生的Array类,或者引入一个外部的js框架也扩展了原生Array。那问题就来了。
所以最好还是用for循环遍历数组
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# js遍历数组
# js
# for循环遍历数组
# Javascript技巧之不要用for in语句对数组进行遍历
# js数组循环遍历数组内所有元素的方法
# Javascript数组循环遍历之forEach详解
# JS实现遍历不规则多维数组的方法
# JS中循环遍历数组的四种方式总结
# JavaScript 数组遍历的五种方法
# JavaScript中数组遍历方法合集大全
# 遍历
# 的是
# 这段
# 一个普通
# 一个函数
# 是在
# 来了
# 出了
# 基础上
# 这个问题
# 很简单
# 再看
# 到此
# 多出
# 这还
# 先看
# 大家多多
# 谁不
# 这一行
# 出现了
相关文章:
广州顶尖建站服务:企业官网建设与SEO优化一体化方案
招贴海报怎么做,什么是海报招贴?
网站制作难吗安全吗,做一个网站需要多久时间?
太原网站制作公司有哪些,网约车营运证查询官网?
如何在万网主机上快速搭建网站?
如何通过宝塔面板实现本地网站访问?
如何快速搭建支持数据库操作的智能建站平台?
网站制作服务平台,有什么网站可以发布本地服务信息?
建站10G流量真的够用吗?如何应对访问高峰?
如何通过虚拟主机快速搭建个人网站?
香港网站服务器数量如何影响SEO优化效果?
营销式网站制作方案,销售哪个网站招聘效果最好?
香港服务器网站测试全流程:性能评估、SEO加载与移动适配优化
标准网站视频模板制作软件,现在有哪个网站的视频编辑素材最齐全的,背景音乐、音效等?
手机怎么制作网站教程步骤,手机怎么做自己的网页链接?
制作网站软件推荐手机版,如何制作属于自己的手机网站app应用?
如何配置IIS站点权限与局域网访问?
学生网站制作软件,一个12岁的学生写小说,应该去什么样的网站?
金*站制作公司有哪些,金华教育集团官网?
南宁网站建设制作定制,南宁网站建设可以定制吗?
建站之星代理如何优化在线客服效率?
建站之星如何保障用户数据免受黑客入侵?
建站之星备案流程有哪些注意事项?
深圳网站制作的公司有哪些,dido官方网站?
在线制作视频网站免费,都有哪些好的动漫网站?
太平洋网站制作公司,网络用语太平洋是什么意思?
海南网站制作公司有哪些,海口网是哪家的?
专业的网站制作设计是什么,如何制作一个企业网站,建设网站的基本步骤有哪些?
网站制作与设计教程,如何制作一个企业网站,建设网站的基本步骤有哪些?
网站规划与制作是什么,电子商务网站系统规划的内容及步骤是什么?
正规网站制作公司有哪些,目前国内哪家网页网站制作设计公司比较专业靠谱?口碑好?
如何在服务器上配置二级域名建站?
已有域名如何快速搭建专属网站?
定制建站平台哪家好?企业官网搭建与快速建站方案推荐
如何在云指建站中生成FTP站点?
如何在七牛云存储上搭建网站并设置自定义域名?
音乐网站服务器如何优化API响应速度?
制作销售网站教学视频,销售网站有哪些?
如何使用Golang安装API文档生成工具_快速生成接口文档
盐城做公司网站,江苏电子版退休证办理流程?
C#如何使用XPathNavigator高效查询XML
音响网站制作视频教程,隆霸音响官方网站?
建站主机系统SEO优化与智能配置核心关键词操作指南
在线教育网站制作平台,山西立德教育官网?
如何规划企业建站流程的关键步骤?
北京专业网站制作设计师招聘,北京白云观官方网站?
如何快速配置高效服务器建站软件?
想学网站制作怎么学,建立一个网站要花费多少?
制作旅游网站html,怎样注册旅游网站?
制作农业网站的软件,比较好的农业网站推荐一下?
*请认真填写需求信息,我们会在24小时内与您取得联系。