目标对象:
let obj={id:001,name:'张三',age:18}
方法一: 将对象的属性值赋值为undefined
对象的属性不变,属性值发生了变化,改变了原对象
obj.name=undefined
console.log(obj) //=>{id: 1, name: undefined, age: 18}
方法二:使用ES6新增的Reflect.deleteProperty
直接将对象中的属性删除,改变了原对象
Reflect.deleteProperty(obj,'name')
console.log(obj); //=>{id: 1, age: 18}
方法三:使用delete删除对象的属性
直接将对象中的属性删除,改变了原对象
delete obj.name
console.log(obj); //=>{id: 1, age: 18}
方法四:使用对象的解构
使用展开运算符(...)将特定的对象解构到新的对象中,不会改变原对象
let {name,...res}=obj
let newObj={}
newObj=res
console.log(obj); //=>{id: 1, name: '张三', age: 18}
console.log(newObj); //=>{id: 1, age: 18}