03-2 자료형 이해하기

율룡이·2023년 6월 29일

JS

목록 보기
6/20
post-thumbnail

자료형이란?

컴퓨터가 처리하는 자료의 형태

자료형을 확인하는 법 - typeof 연산자

→ typeof 1990;
← "number"
→ typeof "hello";
← "string"

기본 자료형

숫자형 - 정수

  • 정수란 소수점 없는 숫자를 가리킴
→ var birthYear=1999;
← undefined
→ typeof birthYear;
← "number"

*정수 표현법

8진수
0~7로 표현한 수, 10진수와 구분하기 위해 앞에 0을 붙임
ex) 012,013,0100 (10진수로 10,11,512)

16진수
숫자 0~9와 알파벳 A~F로 표현한 수. 10진수와 구분하기 위해 앞에 0x(또는 0X)를 맨 앞에 붙인다. 이때 알파벳 A~F는 대문자, 소문자 모두 사용
ex) 0xfff, 0xFFF, 0Xfff, 0XFFF (넷 모두 10진수로 16^3-1=4095)

숫자형 - 실수

  • 실수란 소수점 있는 숫자를 가리킴
→ var average=17.5;
← undefined
→ typeof average;
← "number"

*주의
자바스크립트에선 0.1이나 0.2를 2진수로 변환해서 계산하기 때문에, 0.3이 아닌 값이 나오는 것이다. 그러므로 정밀한 프로그램을 만들 땐, 사용에 주의해야 한다.

→ 0.1 + 0.2
← 0.30000000000000004

문자형

  • 작은따옴표나 큰따옴표로 묶은 자료
→ var message = "율룡이는 공부 중";
← undefined
→ typeof messsage;
← "string"

*큰 따옴표로 묶은 문자형 안에 따옴표를 포함시키고 싶다면?
" '문장' "으로 표기

논리형

  • 참(true)와 거짓(false)를 값으로 표현하는 자료
→ var age = 25;
← undefined
→ age > 20
← true
→ age < 20
← false

// true와 false가 정말 논리형인지 판단
→ typeof true;
← "boolean"
→ typeof false;
← "boolean"

undefined 와 null

  • 자료형이 정해지지 않았을 떄의 상태

undefined : 처음 변수가 선언될 때 자료형을 따로 선언하지 않음
↳ 처음부터 없는 상태
null : 기존의 값이 더 이상 유효하지 않음
↳ 있었다가 유효하지 않게 된 상태

→ var first;
← undefined
→ var second = 10;
← undefined
→ second = null;
← null

복합 자료형

배열

  • 여러 값을 순서에 따라 하나의 변수에 저장하는 유형 ex) 알약통

배열 선언 방법 (괄호에 미입력 시 빈 배열로 선언)

var addValue = [ ];
//각각 변수 선언할 경우 (배열 미사용)
var spring = "봄";
var summer = "여름";
var fall = "가을";
var winter = "겨울";

--------------------------------------

//배열에 4값 입력할 경우 (배열 사용)
→ var seasons = ["봄","여름","가을","겨울"];
→ seasons
← ["봄","여름","가을","겨울"]
▶ (4)

배열의 특정 값을 가져올 때 사용하는 인덱스

→ seasons[0]
← "봄"
→ seasons[1]
← "여름"
→ seasons[2]
← "가을"
→ seasons[3]
← "겨울"

객체

var kim = {
	firstName : "John",
    lastName : "Kim",
    age : 35,
    address : "Seoul"
    }

객체는 여러 자료를 중괄호로 묶을 수 있다. 배열과 다른 점은, 키와 값을 콜론으로 한쌍을 만들어야 하는 것이다. 위의 예시에서 first는 키, "John"은 값이다.

자바스크립트 자료형의 특징

1.C언어와 java의 경우, 변수 선언 시 자료형을 미리 지정해야 한다.
= 강력한 자료형 체크 (오류를 확실히 방지)
Javascript의 경우, 변수의 자료형을 미리 지정하지 않는다.
= 느슨한 자료형 체크

int age = 20;
char *name = "john";
//강력한 자료형
---------------------
var age = 20;
var name = "john";
typeof age;
"number"
typeof name;
"string"
profile
주니어 개발자의 모든 성장 과정 기록

0개의 댓글