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 相关文章推荐
ASP.NET jQuery 实例16 通过控件CustomValidator验证RadioButtonList
Feb 03 Javascript
使用JavaScript修改浏览器URL地址栏的实现代码
Oct 21 Javascript
javascript实现的一个随机点名功能
Aug 26 Javascript
node.js中的fs.readlinkSync方法使用说明
Dec 17 Javascript
jquery实现鼠标拖拽滑动效果来选择数字的方法
May 04 Javascript
JS中mouseover和mouseout多次触发问题如何解决
Jun 06 Javascript
JS如何判断json是否为空
Jul 06 Javascript
解析JavaScript数组方法reduce
Dec 12 Javascript
vue axios同步请求解决方案
Sep 29 Javascript
javascript判断一个变量是数组还是对象
Apr 10 Javascript
Vue 实现登录界面验证码功能
Jan 03 Javascript
vue实现列表拖拽排序的示例代码
Apr 08 Vue.js
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
编写Smarty插件在模板中直接加载数据的详细介绍
2013/06/26 PHP
如何使用PHP实现javascript的escape和unescape函数
2013/06/29 PHP
详解PHP中的Traits
2015/07/29 PHP
PHP中十六进制颜色与RGB颜色值互转的方法
2019/03/18 PHP
关于laravel 子查询 &amp; join的使用
2019/10/16 PHP
JavaScript中yield实用简洁实现方式
2010/06/12 Javascript
基于jQuery的的一个隔行变色,鼠标移动变色的小插件
2010/07/06 Javascript
Jquery插件分享之气泡形提示控件grumble.js
2014/05/20 Javascript
JavaScript 学习笔记之语句
2015/01/14 Javascript
javascript使用输出语句实现网页特效代码
2015/08/06 Javascript
javascript实现tab切换的两个实例
2015/11/05 Javascript
jQuery获取某天的农历日期并判断是否除夕或新年的方法
2016/03/01 Javascript
html5+javascript实现简单上传的注意细节
2016/04/18 Javascript
JavaScript计算器网页版实现代码分享
2016/07/15 Javascript
js阻止移动端页面滚动的两种方法
2017/01/25 Javascript
解决AjaxFileupload 上传时会出现连接重置的问题
2017/07/07 Javascript
vue中配置mint-ui报css错误问题的解决方法
2017/10/11 Javascript
mpvue 单文件页面配置详解
2018/12/02 Javascript
mpvue 页面预加载新增preLoad生命周期的两种方式
2019/10/17 Javascript
一个检测OpenSSL心脏出血漏洞的Python脚本分享
2014/04/10 Python
python中使用urllib2获取http请求状态码的代码例子
2014/07/07 Python
Python解惑之整数比较详解
2017/04/24 Python
详解Python实现多进程异步事件驱动引擎
2017/08/25 Python
PyQt5重写QComboBox的鼠标点击事件方法
2019/06/25 Python
Python切图九宫格的实现方法
2019/10/10 Python
django 装饰器 检测登录状态操作
2020/07/02 Python
美国嘻哈首饰购物网站:Hip Hop Bling
2016/12/30 全球购物
印尼购物网站:iLOTTE
2019/10/16 全球购物
美国价格实惠的在线眼镜网站:Zeelool
2020/12/25 全球购物
捷克母婴用品购物网站:Feedo.cz
2020/12/28 全球购物
水利专业大学生职业生涯规划书范文
2014/09/17 职场文书
法人身份证明书
2015/06/18 职场文书
2016年教师节慰问信
2015/12/01 职场文书
党员公开承诺书(2016最新版)
2016/03/24 职场文书
PHP正则表达式之RCEService回溯
2022/04/11 PHP
golang语言指针操作
2022/04/14 Golang