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设置body高度为浏览器高度的方法
Feb 09 Javascript
js判断手机访问或者PC的几个例子(常用于手机跳转)
Dec 15 Javascript
jQuery遍历DOM元素与节点方法详解
Apr 14 Javascript
深入分析javascript中的错误处理机制
Jul 17 Javascript
jQuery滚动插件scrollable.js用法分析
May 25 jQuery
angularJS的radio实现单项二选一的使用方法
Feb 28 Javascript
vue  自定义组件实现通讯录功能
Sep 30 Javascript
vuex实现的简单购物车功能示例
Feb 13 Javascript
layui自定义ajax左侧三级菜单
Jul 26 Javascript
用 js 写一个 js 解释器过程详解
Aug 02 Javascript
详解从vue-loader源码分析CSS Scoped的实现
Sep 23 Javascript
详解Vite的新体验
Feb 22 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序列号生成函数和字符串替换函数代码
2012/06/07 PHP
php中使用url传递数组的方法
2015/02/11 PHP
PHP实现冒泡排序的简单实例
2016/05/26 PHP
PHP实现将MySQL重复ID二维数组重组为三维数组的方法
2016/08/01 PHP
如何在PHP中读写文件
2020/09/07 PHP
在一个form用一个SUBMIT(或button)分别提交到两个处理表单页面的代码
2007/02/15 Javascript
Javascript 获取链接(url)参数的方法
2009/02/15 Javascript
js数据验证集合、js email验证、js url验证、js长度验证、js数字验证等简单封装
2010/05/15 Javascript
一个轻量级的javascript库 pj介绍
2010/12/19 Javascript
推荐17个优美新鲜的jQuery的工具提示插件
2012/09/14 Javascript
JavaScript的事件绑定(方便不支持js的时候)
2013/10/01 Javascript
js实现iframe跨页面调用函数的方法
2014/12/13 Javascript
JavaScript返回0-1之间随机数的方法
2015/04/06 Javascript
jQuery实现仿腾讯微博滑出效果报告每日天气的方法
2015/05/11 Javascript
Bootstrap CSS组件之面包屑导航(breadcrumb)
2016/12/17 Javascript
使用jquery datatable和bootsrap创建表格实例代码
2017/03/17 Javascript
mac下的nodejs环境安装的步骤
2017/05/24 NodeJs
bootstrap-table实现服务器分页的示例 (spring 后台)
2017/09/01 Javascript
为jquery的ajax请求添加超时timeout时间的操作方法
2018/09/04 jQuery
js实现简单的贪吃蛇游戏
2020/04/23 Javascript
Python抽象类的新写法
2015/06/18 Python
Python SQLite3简介
2018/02/22 Python
django输出html内容的实例
2018/05/27 Python
python 安装教程之Pycharm安装及配置字体主题,换行,自动更新
2020/03/13 Python
Python爬虫设置Cookie解决网站拦截并爬取蚂蚁短租的问题
2021/02/22 Python
CSS3实现10种Loading效果
2016/07/11 HTML / CSS
亚洲最大的眼镜批发商和零售商之一:Glasseslit
2018/10/08 全球购物
学生喝酒检讨书
2014/02/06 职场文书
飘柔洗发水广告词
2014/03/14 职场文书
企业法人授权委托书
2014/09/25 职场文书
写给老师的保证书
2015/05/09 职场文书
三方合作意向书范本
2015/05/09 职场文书
2015年房产销售工作总结范文
2015/05/22 职场文书
2015年生活老师工作总结
2015/05/27 职场文书
超市主管竞聘书
2015/09/15 职场文书
2016银行求职自荐信
2016/01/28 职场文书