JS遍历数组和对象的区别及递归遍历对象、数组、属性的方法详解


Posted in Javascript onJune 14, 2016

废话不多说了,直奔主题,你,具体代码如下所示:

<script>
 //----------------for用来遍历数组对象--
 var i,myArr = [1,2,3];
 for (var i = 0; i < myArr.length; i++) {
  console.log(i+":"+myArr[i]);
 };
 //---------for-in 用来遍历非数组对象
 var man ={hands:2,legs:2,heads:1};
 //为所有的对象添加clone方法,即给内置原型(object,Array,function)增加原型属性,该方法很强大,也很危险
 if(typeof Object.prototype.clone ==="undefined"){
  Object.prototype.clone = function(){}; 
 }
 //
 for(var i in man){
  if (man.hasOwnProperty(i)) { //filter,只输出man的私有属性
   console.log(i,":",man[i]);
  };
 }
 //输出结果为print hands:2,legs:2,heads:1
 for(var i in man) {//不使用过滤
  console.log(i,":",man[i]);
 } 
 //输出结果为
 //hands : 2 index.html:20
 //legs : 2 index.html:20
 //heads : 1 index.html:20
 //clone : function (){} 
 for(var i in man) {
  if(Object.prototype.hasOwnProperty.call(man,i)) { //过滤
   console.log(i,":",man[i]);
  }
 } //输出结果为print hands:2,legs:2,heads:1 </script>

接下来给大家介绍js 递归遍历对象、数组、属性

在前端工作时,有时我们需要遍历一些未知类型的对象。代码如下:

//js遍历对象
function TraversalObject(obj)
{
    for (var a in obj) {
        if (typeof (obj[a]) == "object") {
            TraversalObject(obj[a]); //递归遍历
        }
        else {
            alert(a + "=" + obj[a]);//值就显示
        }
    }
}

//遍历对象中所有Ur的值
function TraversalObject(obj)
{
    for (var a in obj) {

        if(a=="Url")    alert(obj[a]);/ /显示URL的值
        if (typeof (obj[a]) == "object") {
            TraversalObject(obj[a]); //递归遍历
        }
    }
}

这种遍历方法在对象不规则但需要获取相同属性时起到非常好的作用。

Javascript 相关文章推荐
javascript 日期时间函数(经典+完善+实用)
May 27 Javascript
JavaScript DOM学习第四章 getElementByTagNames
Feb 19 Javascript
自用js开发框架小成 学习js的朋友可以看看
Nov 16 Javascript
写得不错的jquery table鼠标经过变色代码
Sep 27 Javascript
javascript解析json实例详解
Nov 05 Javascript
基于jquery实现发送文章到手机的代码
Dec 26 Javascript
JavaScript中的this关键字使用方法总结
Mar 13 Javascript
基于JavaScript实现轮播图代码
Jul 14 Javascript
全面了解构造函数继承关键apply call
Jul 26 Javascript
微信小程序 删除项目工程实现步骤
Nov 10 Javascript
node.js博客项目开发手记
Mar 16 Javascript
Vue中插入HTML代码的方法
Sep 21 Javascript
JS递归遍历对象获得Value值方法技巧
Jun 14 #Javascript
全面解析JavaScript中的valueOf与toString方法(推荐)
Jun 14 #Javascript
JavaScript函数中关于valueOf和toString的理解
Jun 14 #Javascript
Jquery基础之事件操作详解
Jun 14 #Javascript
好好了解一下Cookie(强烈推荐)
Jun 14 #Javascript
巧方法 JavaScript获取超链接的绝对URL地址
Jun 14 #Javascript
使用js获取地址栏参数的方法推荐(超级简单)
Jun 14 #Javascript
You might like
php的POSIX 函数以及进程测试的深入分析
2013/06/03 PHP
thinkPHP中_initialize方法实例分析
2016/12/05 PHP
PHP实现从PostgreSQL数据库检索数据分页显示及根据条件查找数据示例
2018/06/09 PHP
PHP实现简单日历类编写
2020/08/28 PHP
JavaScript 监听textarea中按键事件
2009/10/08 Javascript
jquery EasyUI的formatter格式化函数代码
2011/01/12 Javascript
jquery 提交值不为空的元素示例代码
2013/05/10 Javascript
用javascript删除当前行,添加行(示例代码)
2013/11/25 Javascript
浅析jQuery中调用ajax方法时在不同浏览器中遇到的问题
2014/06/11 Javascript
javascript实现依次输入input自动定焦
2014/12/23 Javascript
jQuery中:header选择器用法实例
2014/12/29 Javascript
JQueryEasyUI之DataGrid数据显示
2016/11/23 Javascript
javascript表达式和运算符详解
2017/02/07 Javascript
详解微信小程序实现仿微信聊天界面(各种细节处理)
2019/02/17 Javascript
vue数据初始化initState的实例详解
2019/04/11 Javascript
vue router 用户登陆功能的实例代码
2019/04/24 Javascript
layui监听工具栏的实例(操作列表按钮)
2019/09/10 Javascript
Vue的v-model的几种修饰符.lazy,.number和.trim的用法说明
2020/08/05 Javascript
vue router-link 默认a标签去除下划线的实现
2020/11/06 Javascript
[44:33]EG vs Liquid 2018国际邀请赛小组赛BO2 第二场 8.18
2018/08/19 DOTA
python实现超简单端口转发的方法
2015/03/13 Python
python 使用get_argument获取url query参数
2017/04/28 Python
python实现学生管理系统
2018/01/11 Python
python opencv 直方图反向投影的方法
2018/02/24 Python
Python3.6日志Logging模块简单用法示例
2018/06/14 Python
python cv2在验证码识别中应用实例解析
2019/12/25 Python
pytorch 准备、训练和测试自己的图片数据的方法
2020/01/10 Python
2013年保送生自荐信格式
2013/11/20 职场文书
优秀交警事迹材料
2014/01/26 职场文书
cf收人广告词大全
2014/03/14 职场文书
网络宣传方案
2014/03/15 职场文书
食堂厨师岗位职责
2014/08/25 职场文书
干部作风建设个人剖析材料
2014/10/11 职场文书
教学反思怎么写
2016/02/24 职场文书
Java 在生活中的 10 大应用
2021/11/02 Java/Android
nginx.conf配置文件结构小结
2022/04/08 Servers