반응형

자바스크립트의 기본 개념을 익히는 것은 매우 중요합니다. 이번에는 객체와 for...in 반복문을 활용한 문제를 준비했습니다. 코드를 분석하고, 문제를 풀어보세요!
퀴즈를 위한 코드
function countProperties(obj) {
if (typeof obj !== 'object' || obj === null) {
return "Invalid input";
}
let count = 0;
for (let key in obj) {
count++;
}
return count;
}
console.log(countProperties({ a: 1, b: 2, c: 3 }));
console.log(countProperties({ name: "Alice", age: 25 }));
console.log(countProperties(null));
console.log(countProperties([]));
퀴즈 문제
- 위 코드를 실행하면 콘솔에 어떤 출력이 나올까요?
- a) 3, 2, "Invalid input", 0
- b) 3, 2, undefined, 0
- c) 3, 2, "Invalid input", Invalid input
- d) 3, 2, 0, 0
- for...in 반복문의 역할은 무엇인가요?
- a) 객체의 키를 순회하며 각 키에 접근한다.
- b) 객체의 값을 순회하며 각 값에 접근한다.
- c) 배열의 요소를 반복한다.
- d) 객체의 모든 속성을 배열로 변환한다.
정답 및 해설
1번 문제 해설 (출력 결과 예상)
console.log(countProperties({ a: 1, b: 2, c: 3 })); // 3
console.log(countProperties({ name: "Alice", age: 25 })); // 2
console.log(countProperties(null)); // "Invalid input"
console.log(countProperties([])); // 0 (빈 배열은 객체이므로 키 없음)
- countProperties({ a: 1, b: 2, c: 3 }) → 객체의 키 개수가 3개이므로 3 반환
- countProperties({ name: "Alice", age: 25 }) → 객체의 키 개수가 2개이므로 2 반환
- countProperties(null) → null은 객체가 아니므로 "Invalid input" 반환
- countProperties([]) → 빈 배열은 객체이지만 키가 없으므로 0 반환
정답: ✅ a) 3, 2, "Invalid input", 0
2번 문제 해설 (for...in 반복문의 역할)
- for...in 반복문은 객체의 모든 열거 가능한 키를 순회하는 반복문입니다.
- obj[key]를 사용하면 각 키에 해당하는 값을 가져올 수도 있습니다.
정답: ✅ a) 객체의 키를 순회하며 각 키에 접근한다.
이 문제를 풀기 위해 필요한 자바스크립트 개념
- 객체 다루기 (object 타입 확인)
- for...in 반복문 활용
- 조건문 (if 문을 사용한 유효성 검사)
- 객체의 키와 값 접근 방법
끝
반응형
'IT > Python Quiz' 카테고리의 다른 글
| [javascript] 삼항 연산자 퀴즈 10문제 (0) | 2025.02.14 |
|---|---|
| [javascript] 자바스크립트 코드 읽기 연습 - 초급 퀴즈13 (0) | 2025.02.14 |
| [javascript] 자바스크립트 코드 읽기 연습 - 초급 퀴즈11 (0) | 2025.02.14 |
| [javascript] 자바스크립트 코드 읽기 연습 - 초급 퀴즈12 (0) | 2025.02.14 |
| [javascript] 자바스크립트 코드 읽기 연습 - 초급 퀴즈9 (0) | 2025.02.14 |
| [javascript] 자바스크립트 코드 읽기 연습 - 초급 퀴즈8 (0) | 2025.02.14 |
| [javascript] 자바스크립트 코드 읽기 연습 - 중급 퀴즈5 (0) | 2025.02.14 |
| [javascript] 자바스크립트 코드 읽기 연습 - 중급 퀴즈4 (0) | 2025.02.14 |
댓글