js如何修改对象中的属性名
在JavaScript中,可以使用delete
操作符删除现有属性,并使用[]
操作符结合Object.keys()
和Object.defineProperty()
来修改属性名。以下是一个示例代码:
function renameProperty(obj, oldName, newName) {
// 1. 新属性名不存在且旧属性名存在,则删除旧属性名并定义新属性名
if (newName in obj === false && oldName in obj) {
obj[newName] = obj[oldName];
delete obj[oldName];
}
}
// 示例使用
const person = {
firstName: 'John',
lastName: 'Doe'
};
renameProperty(person, 'firstName', 'first_name');
console.log(person); // { first_name: 'John', lastName: 'Doe' }
在这个例子中,renameProperty
函数接受一个对象obj
、一个旧属性名oldName
和一个新属性名newName
作为参数。如果新属性名不存在于对象中,且旧属性名存在,则将旧属性名的值复制到新属性名,并删除旧属性名。
评论已关闭