您可以使用递归方法并收集对象的键。该建议还寻找数组。
function getFlatObject(object) { function iter(o, p) { if (o && typeof o === 'object') { Object.keys(o).forEach(function (k) { iter(o[k], p.concat(k)); }); return; } path[p.join('.')] = o; } var path = {}; iter(object, []); return path;}var obj = { one: 1, two: { three: 3 }, four: { five: 5, six: { seven: 7 }, eight: 8 }, nine: 9 }, path = getFlatObject(obj);console.log(path);


