라이브러리
[JAVASCRIPT] Object.seal(obj) - 객체의 속성 추가를 금지하되 기존 속성 수정은 가능하게 만듦
Object.seal() 메서드
`Object.seal()` 메서드는 객체의 프로퍼티를 읽기/쓰기 불변으로 만드는 메서드입니다. 이 메서드는 객체의 프로퍼티를 변경하거나 삭제하는 것을 방지하며, 객체의 프로퍼티를 읽기 전용으로 만듭니다.
Object.seal() 메서드의 특징
* 객체의 프로퍼티를 읽기/쓰기 불변으로 만듭니다.
* 객체의 프로퍼티를 변경하거나 삭제하는 것을 방지합니다.
* 객체의 프로퍼티를 읽기 전용으로 만듭니다.
Object.seal() 메서드의 예제
#hostingforum.kr
javascript
// 객체 생성
let person = {
name: 'John',
age: 30,
address: {
street: '123 Main St',
city: 'New York'
}
};
// Object.seal() 메서드 호출
Object.seal(person);
// 프로퍼티 변경 시 에러 발생
try {
person.name = 'Jane';
} catch (e) {
console.log(e); // TypeError: Cannot create property 'name' on a non-object
}
// 프로퍼티 삭제 시 에러 발생
try {
delete person.age;
} catch (e) {
console.log(e); // TypeError: Cannot delete property 'age' of #
}
// 읽기 전용 프로퍼티
console.log(person.address.street); // '123 Main St'
try {
person.address.street = '456 Main St';
} catch (e) {
console.log(e); // TypeError: Cannot create property 'street' on a non-object
}
Object.seal() 메서드의 사용 사례
* 객체의 프로퍼티를 변경하거나 삭제하는 것을 방지해야 할 때 사용합니다.
* 객체의 프로퍼티를 읽기 전용으로 만들고 싶을 때 사용합니다.
Object.seal() 메서드의 제한 사항
* 객체의 프로퍼티를 변경하거나 삭제하는 것을 방지하기 때문에, 객체의 프로퍼티를 동적으로 추가하거나 삭제하는 것은 불가능합니다.
* 객체의 프로퍼티를 읽기 전용으로 만들기 때문에, 객체의 프로퍼티를 변경하거나 삭제하는 것은 불가능합니다.
Object.seal() 메서드의 결론
`Object.seal()` 메서드는 객체의 프로퍼티를 읽기/쓰기 불변으로 만드는 메서드입니다. 이 메서드는 객체의 프로퍼티를 변경하거나 삭제하는 것을 방지하며, 객체의 프로퍼티를 읽기 전용으로 만듭니다. 객체의 프로퍼티를 변경하거나 삭제하는 것을 방지해야 할 때, 또는 객체의 프로퍼티를 읽기 전용으로 만들고 싶을 때 사용할 수 있습니다.
댓글목록
등록된 댓글이 없습니다.