JavaScript - 문제 미리보기

문제 649

medium
다음 코드에서 빈칸에 들어갈 올바른 메서드는 무엇인가요?

"use strict";
const person = {firstName: "John", age: 30};
__________(person);
// 이제 속성 추가와 삭제가 모두 불가능하지만, 기존 속성 값은 변경 가능
person.age = 31; // 성공
delete person.age; // TypeError 발생
person.nationality = "Korean"; // TypeError 발생
A. Object.preventExtensions
B. Object.seal
C. Object.freeze
D. Object.lock

정답: B

Object.seal() 메서드는 객체를 봉인(seal)하여 새로운 속성 추가와 기존 속성 삭제를 모두 방지합니다. 하지만 기존 속성의 값은 여전히 변경할 수 있습니다. 이는 Object.preventExtensions()보다 더 제한적이고, Object.freeze()보다는 덜 제한적인 중간 단계의 보호 수준입니다.

💡 학습 팁

이 문제를 포함한 JavaScript 과목의 모든 문제를 순차적으로 풀어보세요. 진행상황이 자동으로 저장되어 언제든지 이어서 학습할 수 있습니다.