본문 바로가기

javascript2

[JS] 호이스팅 (Hoisting) 호이스팅은 끌어올리는 것을 뜻한다.varconsole.log(str);var str = '안녕하세요';자바스크립트에서는 var str 부분을 선언 단계, ‘안녕하세요’ 부분을 할당 단계로 구분한다.위와 같이 var 변수를 초기화 하기 전에 출력을 하려고 할 때, 선언 단계가 호이스팅(끌어 올라감) 되면서 undefined로 초기화 되어 출력된다.함수 호이스팅func();function func() { console.log('안녕하세요');}위의 코드도 마찬가지로 함수도 호이스팅이 되기 때문에 출력이 된다.let, constconsole.log(str);console.log(str2);let str = '안녕하세요';const str = '안녕하세요';let과 const는 var와 마찬가지로 호이스팅은 되.. 2023. 10. 19.
[JS] 변수 및 스코프 변수 선언 방식var : 중복 선언과 재할당이 가능하다.소스 코드가 복잡해질 경우 기존 선언해둔 변수를 잊고 다시 선언하거나 재할당을 해서 어떤 부분에서 값이 변경되는지 파악하기 힘들 수 있다.(이로 인해 변수 할당을 할 때는 var를 잘 사용하지 않는다.)let (ES6) : 중복 선언은 불가하며, 재할당은 가능하다.const (ES6) : 중복 선언과 재할당 둘 다 불가능하다.Scope(유효한 참조 범위)var : function-level scope (함수 레벨 스코프)function func() { if(true) { var a = 'a'; console.log(a); } console.log(a); }var는 함수 안에서 조건문 블럭에 생성이 되.. 2023. 10. 19.