Object.preventExtensions() - запобігає додаванню нових властивостей об'єкта (тобто, запобігає розширення цього об'єкта в майбутньому).
Object.preventExtensions(obj )
obj - об'єкт.
Об'єкт є розширюваним, якщо до нього можна додати нові властивості. Метод Object.preventExtensions() позначає об'єкт, як більш не розширюваний, так що він ніколи не буде мати інших властивостей, крім тих, що були у нього на момент позначки його не розширювати. Зверніть увагу, що, в загальному випадку, властивості не расширюваного об'єкта все ще можуть бути видалені. Спроба додати нові властивості до не розширювати об'єкту зазнає невдачі, або мовчки, або з викиданням виключення TypeError.
Метод Object.preventExtensions() запобігає додаванню тільки власних властивостей. Властивості все ще можуть бути додані в прототип об'єкта. Однак, виклик Object.preventExtensions() на об'єкті також запобігає розширення його властивості __proto__ .
var b={a:4.5};
Object.preventExtensions(b);
b.newA=3;
alert(b.newA);