
둘다 '없음'을 나타낼때 사용하고는 합니다. 의미는 같을 수 있으나 사용하는 목적을 정확히해야 혼란을 줄일 수 있습니다. undefined undefined는 사용자가 명시적으로 지정할 수도 있지만, 값이 존재하지 않을때 자바스크립트 엔진이 자동으로 부여하는 경우도 있습니다. 1) 값을 대입하지 않은 변수(데이터 영역의 주솟값이 없는 식별자)에 접근할때나 2) 객체 내부에 존재하지 않는 프로퍼티에 접근하려고할때, 3) return 문이 없거나 호출되지 않는 함수의 실행결과에서 자바스크립트 엔진은 undefine를 반환합니다. 1) 값을 대입하지 않았을 경우 var name; console.log(name); // undefined 2) 객체 내부에 존재하지 않는 프로퍼티에 접근 var person = {..

데이터 타입의 종류 기본형 타입(Primitive Type) 참조형 타입(Reference Type) 숫자(Number) 문자열(String) 불리언(Boolean) null undefined 심볼(Symbol) 객체(Object) 배열(Array) 함수(Function) 날짜(Date) 정규표현식(RegExp) Map WeakMap Set WeakSet 기본형 타입(Primitive Type) 기본형 타입의 종류에는 숫자, 문자열, 불리언, null, undefined, symbol이 있습니다. 일반적으로 기본형은 '할당이나 연산시 데이터가 복제'된다고 알려져있습니다. 기본형 타입의 메모리 저장 방식 *메모리 할당영역, 주솟값에 대한것은 이해를 돕기위한 개략적인 이미지들이 등장합니다. 메모리 할당 시 ..

변수(Variable)와 식별자(Identifier) 들어가기 전에... 사람들은 변수(Variable)와 식별자(Identifier)를 혼용하는 경우가 많습니다. "내가 혼용했었나?"라고 의문이 들면서 이해가가지 않을 수도 있습니다. 혼용을 하면서도 인지하지 못하는 경우가 많기 때문인데, 첫번째로는, 대화의 문맥에 따라 혼용하더라도 상대방이 어떠한 말을 하는지 유추할 수 있기 때문이고 두번째로는, 애초에 혼용해서 사용해왔기때문에 그 차이를 이해하지 못하고 같은 의미로 사용하기때문입니다. "변수 name을 선언 안 한 것 같은데" 가 아닌, "식별자 name을 선언 안 한 것 같은데" 가 정확한 문장이라면 읭? 이러실 수도 있습니다. 제가 읭? 이랬거든요. 변수(Variable) 변수라는 이름은 '변할 ..