호이스팅 (1) 썸네일형 리스트형 자바스크립트에서 호이스팅이란 a = 2; var a; console.log(a); 다음의 결과값은 undefined가 아니라 놀랍게도 2입니다. console.log(a); var a = 2; 이 코드의 결과값은 undefined입니다. 이런 결과가 나오는 이유는 호이스팅 때문입니다. 호이스팅은 선언문을 끌어올리는 동작입니다. var a;는 선언문이고 a = 2는 대입문입니다. 따라서, 맨 위의 코드는 var a;가 호이스팅에 의해서 가장 위로 끌어올려지므로 2가 출력됩니다. 하지만, var a = 2;는 다릅니다. var a = 2;를 자바스크립트 (이하 JS) 엔진은 var a;와 a = 2;로 나누어서 처리합니다. 여기서, 선언문인 var a;만 맨 위로 끌어올려지므로 var a; console.log(a); a = 2; JS.. 이전 1 다음