在下面这个函数中,我在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);
}
答案 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);
}