JS 핵심 문법·비동기·DOM 개념 10문항
10문항 · 4지선다 · 해설 포함
전체 10문항의 정답과 해설입니다. 아직 풀지 않았다면 위에서 먼저 풀어보세요.
var는 함수 스코프·호이스팅, let은 블록 스코프·재할당 가능, const는 블록 스코프·재할당 불가입니다. ES6 이후 var 대신 let/const 사용을 권장합니다.
== (동등)은 타입 강제 변환 후 비교(1 == "1" → true), === (일치)는 타입까지 같아야 합니다(1 === "1" → false). 버그 방지를 위해 ===를 권장합니다.
Promise.all()은 전달된 모든 Promise가 resolve될 때 결과 배열을 반환합니다. 하나라도 reject되면 전체가 즉시 reject됩니다. 병렬 비동기 작업에 유용합니다.
클로저는 함수가 선언될 당시의 렉시컬 스코프를 기억해 외부 함수가 종료된 이후에도 해당 변수에 접근할 수 있는 기능입니다. 데이터 은닉과 팩토리 함수에 활용됩니다.
async/await는 Promise 기반 비동기 코드를 동기 코드처럼 읽기 쉽게 작성하는 ES2017 문법입니다. async 함수 안에서 await로 Promise 결과를 기다립니다.
이벤트 버블링은 특정 요소에서 발생한 이벤트가 부모 요소로 전파되는 현상입니다. event.stopPropagation()으로 전파를 막을 수 있습니다.
DOM은 HTML/XML 문서를 트리 형태로 표현한 프로그래밍 인터페이스입니다. JavaScript로 document.querySelector() 등을 통해 요소를 생성·수정·삭제할 수 있습니다.
null은 개발자가 의도적으로 "없음"을 할당한 것, undefined는 변수를 선언했지만 값을 할당하지 않은 상태입니다. typeof null은 "object"(역사적 버그)입니다.
스프레드 연산자는 [...arr1, ...arr2]로 배열 결합, {...obj1, ...obj2}로 객체 병합, f(...args)로 배열을 함수 인자로 전달하는 등 다양하게 활용됩니다.
localStorage는 브라우저를 닫아도 데이터가 영구적으로 유지됩니다. sessionStorage는 탭/창이 닫히면 삭제됩니다. 둘 다 클라이언트 사이드 저장소입니다.
10문제이며 문제마다 보기 4개 중 하나를 고릅니다. 전체 1분 정도 걸립니다.
맞힌 개수를 10문제 기준으로 환산해 점수와 정답률을 함께 보여줍니다. 문제를 풀 때마다 정답 여부가 바로 표시됩니다.
기술·IT 분야의 상식 문제로 구성했습니다 — JS 핵심 문법·비동기·DOM 개념 10문항.
네, 10문제 모두 해설이 붙어 있습니다. 보기를 고르면 정답과 함께 왜 그런지 바로 확인할 수 있습니다.