JavaScript オブジェクトへの変更を防止する方法
Object.preventExtensions() を使うことで、新しいプロパティが追加されることを防止します。
const person = {
name: 'tamibouz'
}
Object.preventExtensions(person)
person.age = 34
personオブジェクトに対してageというプロパティを追加しようとしますが、Object.preventExtensions()によってプロパティは追加されずエラーで落ちます。
もしstrictモードで動かしている場合は、エラーが発生します。
'use strict'
const person = {
name: 'tamibouz'
}
Object.preventExtensions(person)
person.age = 34 // Uncaught TypeError: Cannot add property age, object is not extensible
最近のコメント