json获取多级java_如何优雅的取出多层级JSON最深处的值

背景描述:

一般我们在遇到这样的JSON时:

const json = {

user: {

posts: [

{ title: 'A',

comments: [ 'Hello!', 'Interesting...' ]

},

{ title: 'B',

comments: [ 'Ok' ]

},

{ title: 'C',

comments: []

}

],

comments: [...]

}

}

需要取出里面的值得这样写:

json.user &&

json.user.posts &&

json.user.posts[0] &&

json.user.posts[0].comments

一般思路:对于取不确定层次的深层值,我们首先想到的是使用递归函数,我要获取的值就需要一个路径来表示,路径可以用数组来标记,如果是数组,我们还需要一个索引来指引,然后我们可以通过递归逐层取值,当路径参数path长度为0时,认为取值完毕,返回结果;

方法一:使用递归函数

function isJson(obj){

var isjson = typeof(obj) == "object" && Object.proto

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值