如何從 JavaScript 物件中刪除屬性

有多種方法可以從 JavaScript 物件中刪除屬性。找出替代方案和建議的解決方法。 從物件中刪除屬性的語意正確的方式是使用 delete 關鍵字。 給定以下物件 const car = { color: 'blue', brand: 'Ford' } 您可以使用以下方式從物件中刪除屬性 delete car.brand 也可以這樣表達: delete car['brand'] delete car.brand delete newCar['brand'] 將屬性設置為 undefined 如果您需要以非常優化的方式執行此操作,例如在循環中對大量物件進行操作時,那麼另一個選擇是將屬性設置為 undefined。 由於 delete 的性質,它的性能比簡單地將屬性重新賦值為 undefined 要慢很多,超過 50 倍。 但是,請記住,該屬性並未從物件中刪除。它的值被清除,但如果您遍歷物件,它仍然存在: 使用 delete 仍然非常快速,只有在有非常好的理由時才應該考慮這種性能問題,否則最好具有更清晰的語意和功能。 在不改變物件的情況下刪除屬性 如果 mutability 是一個關注點,您可以通過從舊物件複製所有屬性(除去要移除的屬性)來創建一個完全新的物件: 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 }, {}) (參見 Object....