원시형 자료란?
참조형 자료란?
클로저란?
스코프란?
함수 내에서 선언된 변수는 함수 내에서만 유효하며 함수 외부에서는 참조할 수 없다. (함수 내에서 선언된 변수=지역변수, 그 외는 모두 전역 변수)
모든 코드 블록(함수, if/while/for문 등) 내에서 선언된 변수는 코드 블록 내에서만 유효하며 외부에서는 참조할 수 없다. (지역변수: 코드블록 내부에서 선언한 변수)
let/const = block scope
var = function scope
var fruit = 'apple'; //전역 변수
console.log(fruit); //'apple'
{ var fruit = 'banana'; //전역변수
}
console.log(foo); //banana
let fruit= 'lemon'; //전역변수
{
let fruit= 'mango'; //지역변수
let vegetable='tomato'; //지역변수
}
console.log(fruit); // 'lemon'
console.log(vegetable); ReferenceError: bar is not defined;