前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >记一道前端面试逻辑题:给定任意JSON数据……

记一道前端面试逻辑题:给定任意JSON数据……

作者头像
用户1272076
发布2024-04-18 19:19:33
830
发布2024-04-18 19:19:33
举报
文章被收录于专栏:张培跃张培跃

给定任意JSON数据,请实现方法提取数据字典,即将树状多级字段压缩为一级字段(xx.yy.zz...)并提取其类型。 要求: 1.可上网查资料,但不要直接粘贴。(查也白查) 2.代码结构清晰,执行结果正确

代码语言:javascript
复制
const testData1 = {
  a:1,
  b:{
    c:"test",
    d:{
      userName:"zhangpeiyue"
    }
  },
  e:{
    f:12,
    g:13,
    h:{
      m:5
    }
  }
}
// 期望结果:
{
  a: 1, 
  'b.c': 'test',
  'b.d.userName': 'zhangpeiyue',
  'e.f': 12,
  'e.g': 13,
  'e.h.m': 5
}

参考答案:

代码语言:javascript
复制
function json_dict(obj){
  const obj2 = {};
  for(let key in obj){
    if(obj[key].constructor === Object){
      for(let key2 in json_dict(obj[key])){
        obj2[key+"."+key2] = obj[key+"."+key2] = obj[key][key2]
      }
    }else{
      obj2[key] = obj[key];
    }
  }
  return obj2;
}
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2024-04-15,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 张培跃 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档