打字稿中的lodash _.get函数

Joh*_*ohn 6 javascript typescript lodash

经过一番谷歌搜索后,我感到可以使用本机打字稿实现许多lodash的功能,但我找不到_.get函数的直接答案...

在lodash中,使用_.get函数警报1

let obj = {a:{b:1}};
let a = _.get(obj, 'a.b');
alert(a);
Run Code Online (Sandbox Code Playgroud)

有没有办法只用打字稿就能达到相同的结果?

Nin*_*olz 8

在痛苦的Javascript中,您可以拆分路径并通过遍历给定的对象来缩小路径。

function getValue(object, path) {
    return path.
        replace(/\[/g, '.').
        replace(/\]/g, '').
        split('.').
        reduce((o, k) => (o || {})[k], object);
}

var obj = { a: { b: 1 } },
    a = getValue(obj, 'a.b');

console.log(a);
Run Code Online (Sandbox Code Playgroud)