js遍历对象给key改名
时间: 2023-11-03 21:01:38 浏览: 100
要在JavaScript中遍历对象并更改键名,您可以使用递归和条件语句来完成此操作。以下是一个示例函数来遍历对象并更改键名:
```javascript
function renameKeys(obj, keyMap) {
if (typeof obj !== 'object') {
return obj;
}
const result = {};
for (let key in obj) {
let newKey = key;
for (let i = 0; i < keyMap.length; i++) {
if (keyMap[i].key === key) {
newKey = keyMap[i].value;
break;
}
}
result[newKey] = renameKeys(obj[key], keyMap);
}
return result;
}
```
使用这个函数,您可以传入一个对象和一个键映射数组,数组中的每个对象都具有要更改的键名和新的键名。函数将递归地遍历对象,并根据键映射数组中的匹配项更改键名。以下是使用这个函数的示例代码:
```javascript
const obj = {
Name: "test1Name",
type: "test",
model: "model2"
};
const keyMap = [
{ key: "type", value: "chilren" },
{ key: "model", value: "chilren" }
];
const result = renameKeys(obj, keyMap);
console.log(result);
```
输出将是一个具有更改键名的新对象:
```javascript
{
Name: "test1Name",
chilren: "test",
chilren: "model2"
}
```
阅读全文