码迷,mamicode.com
首页 > 编程语言 > 详细

JavaScript 深度遍历对象的两种方式,递归与非递归

时间:2020-02-20 09:55:15      阅读:98      评论:0      收藏:0      [点我收藏+]

标签:src   ons   非递归   int   bsp   alt   var   png   return   

递归遍历:

  • 基本问题: 当前属性值不为对象时,打印键和值
  • 递归过程:当前属性值为对象时,打印键,继续递归
var o = {
            a: {
                b: {
                    c: {
                        d: {
                            e: {
                                f: 1,
                                g:{
                                    h:2
                                }
                            }
                        }
                    }
                }
            }
        };
        function printObjRec(obj) {
            for (var prop in obj) {
                if (typeof (obj[prop]) === "object") {
                    console.log(prop);
                    getProp(obj[prop]);
                    return;
                }
                console.log(prop);
                console.log(obj[prop]);
            }
        };
        // printObjRec(o);

 

技术图片

 

 

 

非递归遍历:

 

JavaScript 深度遍历对象的两种方式,递归与非递归

标签:src   ons   非递归   int   bsp   alt   var   png   return   

原文地址:https://www.cnblogs.com/ltfxy/p/12334116.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!