1. 변수 호이스팅

다음 코드의 실행 결과를 예측해보세요

console.log(myVar); 
var myVar = 10;
console.log(myVar);
undefined
10

  1. 변수와 함수 동시 선언

다음 코드의 실행 결과를 예측해 보세요.

var num = 5;
console.log(num); 

function num() {
  return 10;
}

console.log(num); 
console.log(num());
5
5
error =>?
// 타입에러가 나는 것을 보니 함수가 아닌 변수 num이 더 상단에 있어
// 변수 num을 실행시키려고하는 것 같음
  1. 변수 재할당

다음 코드의 실행 결과를 예측해 보세요.

var x = 10;
function test() {
  console.log(x);
  var x = 5;
  console.log(x); 
}
test();
console.log(x);
undefined
5
10