
Object.seal() 메서드는 객체의 프로퍼티를 읽기/쓰기 불변으로 만드는 메서드입니다.
Object.seal() 메서드는 객체의 프로퍼티를 수정하거나 삭제하는 것을 방지합니다.
Object.seal() 메서드는 다음과 같은 장점이 있습니다.
- 객체의 프로퍼티를 수정하거나 삭제하는 것을 방지하여 객체의 불변성을 유지할 수 있습니다.
- 객체의 프로퍼티를 읽기/쓰기 불변으로 만드는 것을 방지하여 객체의 상태를 유지할 수 있습니다.
Object.seal() 메서드는 다음과 같은 단점이 있습니다.
- 객체의 프로퍼티를 수정하거나 삭제하는 것을 방지하기 때문에 객체의 프로퍼티를 동적으로 추가하거나 삭제하는 것이 불가능합니다.
- 객체의 프로퍼티를 읽기/쓰기 불변으로 만드는 것을 방지하기 때문에 객체의 프로퍼티를 동적으로 읽거나 쓰는 것이 불가능합니다.
Object.seal() 메서드는 다음과 같은 상황에서 사용하는 것이 좋습니다.
- 객체의 불변성을 유지해야 하는 경우
- 객체의 프로퍼티를 수정하거나 삭제하는 것을 방지해야 하는 경우
Object.seal() 메서드의 예시 코드는 다음과 같습니다.
#hostingforum.kr
javascript
const obj = {
name: 'John',
age: 30
};
Object.seal(obj);
try {
obj.name = 'Jane';
} catch (e) {
console.log('Error: ', e.message); // Error: 'name' is read-only
}
try {
delete obj.age;
} catch (e) {
console.log('Error: ', e.message); // Error: 'age' is read-only
}
위 예시 코드에서, `Object.seal()` 메서드를 사용하여 `obj` 객체의 프로퍼티를 읽기/쓰기 불변으로 만든 후, `obj.name`과 `obj.age`를 수정하거나 삭제하는 것을 시도합니다. 그러나 `obj.name`과 `obj.age`는 읽기/쓰기 불변으로 만들어져 있기 때문에, 수정하거나 삭제하는 것을 시도하면 에러가 발생합니다.
2025-04-30 16:04