如何在 React 中用另一个对象键数组替换一个对象键数组
2022-04-04
671
我有一个对象:
{Color: 'val 1', Name: 'val 2', Id: 'val 3'}
我想循环遍历这个对象并检查另一个对象中是否存在任何键,
如果存在,则用另一个对象中匹配的键替换该键。
{color: 'val 1', name: 'val 2', id: 'val 3'}
预期输出为:
{color: 'val 1', name: 'val 2', id: 'val 3'}
只有第一个对象的键会更改为第二个对象的键
1个回答
可以遍历键来检查它是否包含相同的键,但为大写:
for (let key in shouldBeRenamed) {
if (etalon.hasOwnProperty(key.toLowerCase())) {
newObj[key.toLowerCase()] = shouldBeRenamed[key];
} else {
newObj[key] = shouldBeRenamed[key];
}
}
示例:
let shouldBeRenamed = {Color: 'val 1', Name: 'val 2', Id: 'val 3', Test: 1};
let etalon = {color: 'val 1', name: 'val 2', id: 'val 3'}
keyToLowerCase =(shouldBeRenamed, etalon) =>
{
const newObj = {};
for (let key in shouldBeRenamed) {
if (etalon.hasOwnProperty(key.toLowerCase())) {
newObj[key.toLowerCase()] = shouldBeRenamed[key];
} else {
newObj[key] = shouldBeRenamed[key];
}
}
return newObj
}
console.log(keyToLowerCase(shouldBeRenamed, etalon))
StepUp
2022-04-04