let과 함수 선언 충돌 
function foo() {
console.log(typeof bar); // (1)
let bar = 100;
function bar() {}
console.log(typeof bar); // (2)
}
foo();
JavaScript
복사
정답
함수 표현식 vs 함수 선언 
function foo() {
console.log(typeof bar); // (1)
var bar = function () {};
function bar() {}
console.log(typeof bar); // (2)
}
foo();
JavaScript
복사
정답
함수 표현식 vs 함수 선언 
function foo() {
function bar() {}
console.log(typeof bar); // (1)
{
var bar = 123;
console.log(typeof bar); // (2)
}
console.log(typeof bar); // (3)
}
foo();
JavaScript
복사
정답
함수 안에서 함수 재정의 
function foo() {
console.log(typeof bar); // (1)
function bar() {
return 'first';
}
console.log(bar()); // (2)
function bar() {
return 'second';
}
console.log(bar()); // (3)
}
foo();
JavaScript
복사
정답
함수 표현식 vs 함수 선언 
function foo(bar) {
console.log(typeof bar); // (1)
var bar = 42;
function bar() {}
console.log(typeof bar); // (2)
}
foo();
JavaScript
복사
정답
블록 스코프 let vs 함수 선언 
function foo() {
{
console.log(typeof bar); // (1)
function bar() {}
let bar = 123;
console.log(typeof bar); // (2)
}
}
foo();
JavaScript
복사
정답