如何修复linting没有阴影变量wanring

时间:2018-02-10 20:00:58

标签: javascript typescript

在下面这个函数中,我在no shadowed variable的第二行收到.reduce((nestedObject, key)警告。我该如何解决这个问题?

function deepAccessUsingString(obj, key) {
    return key.split('.').reduce((nestedObject, key) => {
        if (nestedObject && key in nestedObject) {
            return nestedObject[key];
        }
        return undefined;
    }, obj);
}

1 个答案:

答案 0 :(得分:1)

您的问题是key用于外部和内部功能。您只需给key一个不同的名称。

function deepAccessUsingString(obj, key) {
    return key.split('.').reduce((nestedObject, key2) => {
        if (nestedObject && key2 in nestedObject) {
            return nestedObject[key2];
        }
        return undefined;
    }, obj);
}