遍历JSON的所有节点值

复制代码
 1 const json = {
 2     a: { b: { c:1 }},
 3     d: [1,2],
 4 };
 5 
 6 const dfs = (n, path) => {
 7     console.log(n, path);
 8     Object.keys(n).forEach(k => {
 9         dfs(n[k], path.concat(k));
10     }) //Object,keys会返回一个表示给定对象的所有可枚举属性的字符串数组。
11 }
12 
13 dfs(json, []);
复制代码

输出结果

复制代码
{ a: { b: { c: 1 } }, d: [ 1, 2 ] } []
{ b: { c: 1 } } [ 'a' ]
{ c: 1 } [ 'a', 'b' ]
1 [ 'a', 'b', 'c' ]
[ 1, 2 ] [ 'd' ]
1 [ 'd', '0' ]
2 [ 'd', '1' ]
复制代码

 

本文作者:oaoa

本文链接:https://www.cnblogs.com/oaoa/p/14844598.html

版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。

posted @   喵喵队立大功  阅读(284)  评论(0编辑  收藏  举报
评论
收藏
关注
推荐
深色
回顶
收起
点击右上角即可分享
微信分享提示