JavaScript
scope ,hoisting ,primitive ,reference
nathaneast
2019. 8. 26. 17:41
scope
변수에 접근 가능한 범위
지역 변수에서 데이터타입 var 붙이지 않으면 전역변수가 됨
가급적 전역 범위 변수 생성 피하기
내부 => 외부 접근 가능
외부 => 내부 접근 불가
내부와 외부를 판별하는 기준 : 함수
hoisting
host의 동사형, 끌어올리다
변수의 선언부가 끌어올려짐
범위에따라 선언 ,할당 분리
선언문은 자바스크립트 엔진 구동시 가장 먼저 해석
변수 함수 내 => 함수 최상위 선언
변수 함수 바깥 => 전역 컨텍스트 최상위
함수 호이스팅
함수 표현식 : 호이스팅 되지 않음
ex) var a = function(){}...
함수 선언식 : 호이스팅 됨
ex) function a(){}
참조 사이트
https://asfirstalways.tistory.com/197
primitive
단순 값 비교
원시,미개
boolean , string , number , undefined , null
reference
참조형
Object (array , function , object)
메모리에 저장 된 위치값으로 판별
ex)
중괄호 => 배열사용 => 위치값 할당
참조 사이트
http://chanlee.github.io/2013/12/10/javascript-variable-scope-and-hoisting/