遍历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' ]
原文地址:https://www.cnblogs.com/oaoa/p/14844598.html