了解JavaScript Object物件的preventExtensions()方法

JavaScript的preventExtensions()方法是Object物件中的一種方法,它接受一個物件作為參數,並返回相同的物件。傳遞的物件會被改變,成為一個不接受新屬性的物件。無法添加新的屬性,但可以刪除現有的屬性,並且可以更改現有的屬性。

範例:

const dog = {}
dog.breed = 'Siberian Husky'
Object.preventExtensions(dog)

dog.name = 'Roger' //TypeError: Cannot add property name, object is not extensible

傳遞的參數也會作為參數返回,因此dog === myDog(它們是同一個物件)。

我們無法添加新的屬性,但可以刪除現有的屬性:

const dog = {}
dog.breed = 'Siberian Husky'
dog.name = 'Roger'
Object.preventExtensions(dog)
delete dog.name
dog //{ breed: 'Siberian Husky' }