프로그래밍 언어/JavaScript

JavaScript) 데이터유형(Data Type), typeof, 형변환

luana_eun 2022. 1. 4. 12:35
728x90

자바스크립트는 JAVA, C와는 다르게 데이터 유형이 동적으로 할당된다. 

변수 선언시 미리 데이터 타입을 지정하는게 아니라, 변수를 선언하고 무슨 값을 넣냐에 따라 결정된다. 

=> 같은 변수로 다른 데이터 유형을 가질 수 있다. 

 

1. 데이터 유형 5가지

1). Number

숫자. 정수, 실수 상관없이 숫자를 담는다. 

 

 

2). String

문자. 문자 하나든 문자열이든 상관없고, 작은따옴표 큰 따옴표 상관없이 사용할 수 있다. 

 

 

3). Boolean

true / false => 2가지

 

 

4). 배열 Array

대괄호를 사용한다. (=파이썬의 리스트)

let fruits = ['apple', 'grape', 'orange']

 

 

5). 객체 Object

중괄호를 사용한다. 

key:value 한쌍이고 쉼표(,)로 구분한다.  (=파이썬에서 딕셔너리)

let fruits = {'사과':'apple', '바나나':'banana', '수박':'watermelon'}

 

 

 

2. 데이터 타입 확인하는 방법 typeof

let s = "apple";
document.write(typeof s);	// string

let arr = [1, 2, 3, 4, 5];
document.write(typeof arr);	// object

document.write(Array.isArray(arr));	// true

** typeof은 배열(Array)을 객체(Object)로 표시한다. 

   따라서 배열인지 배열이 아닌지 알고싶을때는 typeof가 아닌, isArray()를 사용해야한다. 

    Array.isArray( )는 배열이면 true, 아니면 false를 반환한다. 

 

 

 

3. 형변환

문자 -> 숫자     Number()

문자 -> 정수     parseInt()

문자 -> 실수     parseFloat()

let n2 = "100";
document.write(typeof n2);	// strig
document.write("<br>");
document.write(typeof parseInt(n2));	// number
document.write("<br>");
document.write(typeof parsefloat(n2));	// number

숫자 -> 문자              String()

숫자 -> 문자(진법)       toString(16)      // 1A(문자형)

숫자 -> 문자(소수점)    toFixed(2)        //  36.01(문자형)

let n = 10;
document.write(typeof n);	// number
document.write("<br>");
document.write(typeof String(n));	// string
728x90