比如有一个 object:
let x={'a': {'b': 1, 'c': 2}
let key='a.b'
实际情况可能深度更深,怎么获取到 x.a.b?
1
codehz 2021-08-06 11:45:43 +08:00
const lens = (obj, path) => path.split(".").reduce((o, key) => o && o[key] ? o[key] : null, obj);
lens(x, key); |
2
fishlium 2021-08-06 11:46:07 +08:00
|
3
3dwelcome 2021-08-06 11:49:16 +08:00 via Android
lodash 的 at 函数。
|
4
jifengg 2021-08-06 13:38:47 +08:00
如果没有安全隐患,可以使用 eval:
eval("x."+key) |