본문 바로가기
Frontend/JavaScript

자바스크립트 데이터 타입과 변수

by Forsaken Developer 2023. 3. 14.
728x90
728x90

일반적인 프로그래밍 언어의 데이터 타입은 정수, 실수, 문자, 문자열, 부울 등이 있다.

자바스크립트의 모든 값은 데이터 타입을 가지며 자바스크립트는 7가지의 데이터 타입을 제공한다.

원시타입

  • number
  • string
  • boolean
  • null
  • undefined
  • symbol

객체타입

  • object

자바스크립트에서 변수에 데이터를 할당하기 위해서는 다음과 같이 사용한다.

var x = 3;
var x = 3.0;
var x = 'x';
var x = "hello";

var의 의미는 변수(variable)의 의미이며 일반적인 프로그래밍 언어와는 조금은 다른 문법이다.

변수는 메모리의 공간이고 일반적으로 한정사를 통해서 값의 종류와 크기를 정하도록 한다.

하지만 자바스크립트에서는 어떤 타입이어도 모두 var를 선언하여 변수에 값을 할당할 수 있으며 이를 동적 타이핑이라고 한다.

또한 선언할 때 데이터 타입과 크기를 정하지 않고 변수만 정의할수 있다.

var x;
x = 3;

자바스크립트의 변수는 모두 참조 변수이다.

값이 할당되어야 할때 스스로 공간을 가지는 auto boxing을 사용하여 wrapping하고 그것을 변수가 참조한다.

자바스크립트는 기본 형식이 없고 Wrapper형 클래스만 가진다.

자바스크립트 Wrapper 클래스는 Boolean, Number, String가 있다.

정수와 실수를 표현하는 wrapper클래스는 Number이고 문자와 문자열을 표현하는 wrapper클래스는 String이다.

따라서 변수를 선언하게 되면 내부적으로는 다음과 같은 작업이 일어난다.

var x = new Number(3);

그래서 변수만 선언했을 때는 참조할 객체가 정해지지 않았기 때문에 undefined 상태라고 하며 이는 다른 프로그래밍 언어에서의 null pointer 이다.

undefined는 하나의 값이기 때문에 비교할 때는 문자열 “undefuned”가 아닌 undefined로 비교한다.

var x;
alert(x == undefined);
728x90
반응형

'Frontend > JavaScript' 카테고리의 다른 글

자바스크립트 object 객체  (0) 2023.03.21
자바스크립트 Array 객체  (0) 2023.03.19
자바스크립트 연산자  (0) 2023.03.17
자바스크립트 개발 환경 설정  (0) 2023.03.13
자바스크립트의 탄생 배경  (0) 2023.03.12

댓글