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 相关文章推荐
js chrome浏览器判断代码
Mar 28 Javascript
js获取时间(本周、本季度、本月..)
Nov 22 Javascript
用js设置下拉框为只读的小技巧
Apr 10 Javascript
JavaScript中对象属性的添加和删除示例
May 12 Javascript
jQuery实现图片渐入渐出切换展示效果
Aug 15 Javascript
JavaScript装饰器函数(Decorator)实例详解
Mar 30 Javascript
详解node.js搭建代理服务器请求数据
Apr 08 Javascript
vue+ElementUI实现订单页动态添加产品数据效果实例代码
Jul 13 Javascript
JavaScript实现获取select下拉框中第一个值的方法
Feb 06 Javascript
浅析vue-router中params和query的区别
Dec 24 Javascript
vue项目使用高德地图的定位及关键字搜索功能的实例代码(踩坑经验)
Mar 07 Javascript
微信小程序实现倒计时功能
Nov 19 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源代码
2006/10/09 PHP
PHP5中新增stdClass 内部保留类
2011/06/13 PHP
php FLEA中二叉树数组的遍历输出
2012/09/26 PHP
PHP关联数组的10个操作技巧
2013/01/21 PHP
yii2 modal弹窗之ActiveForm ajax表单异步验证
2016/06/13 PHP
Laravel 模型使用软删除-左连接查询-表起别名示例
2019/10/24 PHP
MacOS下PHP7.1升级到PHP7.4.15的方法
2021/02/22 PHP
实现连缀调用的map方法(prototype)
2009/08/05 Javascript
jquery绑定原理 简单解析与实现代码分享
2011/09/06 Javascript
什么是cookie?js手动创建和存储cookie
2014/05/27 Javascript
js与C#进行时间戳转换
2014/11/14 Javascript
优化RequireJS项目的相关技巧总结
2015/07/01 Javascript
详细分析JavaScript函数定义
2015/07/16 Javascript
jquery实现无刷新验证码的简单实例
2016/05/19 Javascript
DIV+CSS+jQ实现省市联动可扩展
2016/06/22 Javascript
js date 格式化
2017/02/15 Javascript
Node.js使用NodeMailer发送邮件实例代码
2017/03/06 Javascript
在vue中安装使用vux的教程详解
2018/09/16 Javascript
angular4强制刷新视图的方法
2018/10/09 Javascript
微信小程序自定义弹窗wcPop插件
2018/11/19 Javascript
Python使用urllib2模块抓取HTML页面资源的实例分享
2016/05/03 Python
django实现登录时候输入密码错误5次锁定用户十分钟
2017/11/05 Python
django中静态文件配置static的方法
2018/05/20 Python
python挖矿算力测试程序详解
2019/07/03 Python
python GUI库图形界面开发之PyQt5线程类QThread详细使用方法
2020/02/26 Python
python编程的核心知识点总结
2021/02/08 Python
html5记忆翻牌游戏实现思路及代码
2013/07/25 HTML / CSS
《北大荒的秋天》教学反思
2014/04/14 职场文书
电教室标语
2014/06/20 职场文书
党员自我剖析材料
2014/08/31 职场文书
2014年圣诞节寄语
2014/12/08 职场文书
导游词范文
2015/02/13 职场文书
挂职个人工作总结
2015/03/05 职场文书
学校元旦晚会开场白
2015/05/29 职场文书
小学教师读书笔记
2015/07/01 职场文书
nginx作grpc的反向代理踩坑总结
2021/07/07 Servers