码迷,mamicode.com
首页 > Web开发 > 详细

js练习- 给你一个对象,求有几层

时间:2019-02-22 18:39:17      阅读:224      评论:0      收藏:0      [点我收藏+]

标签:children   cti   iso   object   child   ceo   fun   ram   key   

// 比如这个a中,就有四层。如何算出这四层
const a = {
  b: 1,
  c() {},
  d: {
    e: 2,
    f: {
      g: 3,
      h: {
        i: 4,
      },
    },
    j: {
      k: 5,
    },
  },
};

js

function testLevel(param) {
  const isObject = typeof param === ‘object‘ && !(param instanceof Array);
  if (!isObject) return 0;

  const level = 1;
  let childrenLevel = 0;
  Object.entries(param)
    .map(([key, value]) => {
      const valueLevel = testLevel(value, level);

      if (valueLevel > childrenLevel) childrenLevel = valueLevel;
    });
  return level + childrenLevel;
}

js练习- 给你一个对象,求有几层

标签:children   cti   iso   object   child   ceo   fun   ram   key   

原文地址:https://www.cnblogs.com/qiqi715/p/10419697.html

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