Prevents the addition of new properties to an object.
Syntax
Object.preventExtensions(object)
Parameters
object
Required. The object to make non-extensible.
Return Value
The object that is passed to the function.
Exceptions
If the object argument is not an object, a TypeError exception is thrown.
Remarks
The Object.preventExtensions function makes an object non-extensible, so that new named properties cannot be added to it. After an object is made non-extensible, it cannot be made extensible.
For information about how to set property attributes, see Object.defineProperty Function.
Related Functions
The following related functions prevent the modification of object attributes.
| Function | Object is made non-extensible | configurable is set to false for each property |
writable is set to false for each property |
|---|---|---|---|
Object.preventExtensions |
Yes | No | No |
| Object.seal | Yes | Yes | No |
| Object.freeze | Yes | Yes | Yes |
The following functions return true if all of the conditions marked in the following table are true.
| Function | Object is extensible? | configurable is false for all properties? |
writable is false for all data properties? |
|---|---|---|---|
| Object.isExtensible | Yes | No | No |
| Object.isSealed | No | Yes | No |
| Object.isFrozen | No | Yes | Yes |
Example
The following example illustrates the use of the Object.preventExtensions function.
// Create an object that has two properties.
var obj = { pasta: "spaghetti", length: 10 };
// Make the object non-extensible.
Object.preventExtensions(obj);
document.write(Object.isExtensible(obj));
document.write("<br/>");
// Try to add a new property, and then verify that it is not added.
obj.newProp = 50;
document.write(obj.newProp);
// Output:
// false
// undefined
Requirements
Supported in the following document modes: Internet Explorer 9 standards, Internet Explorer 10 standards, and Internet Explorer 11 standards. Also supported in Store apps (Windows 8 and Windows Phone 8.1). See Version Information.
Not supported in the following document modes: Quirks, Internet Explorer 6 standards, Internet Explorer 7 standards, Internet Explorer 8 standards.
See Also
Object.seal Function
Object.freeze Function
Object.isExtensible Function
Object.isSealed Function
Object.isFrozen Function

