删除对象属性的三种方法
How to remove a property from a JavaScript object怎么删除一个对象上的属性呢?dleteconst car = {color: 'blue',brand: 'Ford'}delete car.branddelete car['brand']delete car.branddelete newCar['brand']Setting a property
文章共514字 · 阅读需要大约2分钟
一键AI生成摘要,助你高效阅读
问答
·
How to remove a property from a JavaScript object
怎么删除一个对象上的属性呢?
- dlete
const car = {
color: 'blue',
brand: 'Ford'
}
delete car.brand
delete car['brand']
delete car.brand
delete newCar['brand']
- Setting a property to undefined
如果你需要以一种非常优化的方式来执行这个操作,例如当你在循环中对大量的对象进行操作时,另一个选择是将该属性设置为未定义。
由于它的性质,删除的性能要比简单的重新赋值到undefined慢很多,慢了50倍以上。
然而,请记住,该属性并没有从对象中删除。它的值被抹去了,但如果你迭代对象,它仍然存在
3. 通过赋值得到方式
const car = {
color: 'blue',
brand: 'Ford'
}
const prop = 'color'
const newCar = Object.keys(car).reduce((object, key) => {
if (key !== prop) {
object[key] = car[key]
}
return object
}, {})
主要是考虑到性能的问题,才会去比较这几种方式,选择一种最优的方式。
更多推荐
已为社区贡献1条内容
所有评论(0)