기초부터 시작하는 코딩/Javascript

Javascript를 공부해 봅시다! - 1.자료형이란

kebab00 2023. 2. 20. 15:08

728x90

자료형이란,

- 프로그램에서 처리할 자료의 형태를 말합니다. 3이라는 숫자를 숫자로 처리하는지, 문자열로 처리하는지에 따라 결괏값이 달라집니다.

- 자바스크립트의 자료형은 크게 '원시 유형'과 '객체'로 나뉘어집니다. 원시 유형은 하나의 값만 저장하는 자료형으로, 숫자와 문자열, 논리형, undefined, null, symbol 유형이 있습니다. 그리고 원시 유형 외에는 모두 객체입니다.

 

자료형의 관계표

사진 출처: 저자 고경희   |Do it! 모던 자바스크립트 프로그래밍의 정석

숫자형(number)

- 모든 프로그램에서 가장 기본이 되는 자료형입니다.

- C나 자바 같은 프로그래밍 언어에서는 정수와 실수를 명확히 구별하고 정수도 크기에 따라 다른 자료형을 사용합니다.

- 하지만 자바스크립트에서는 정수와 실수를 함께 묶어서 '숫자형'이라고 합니다.

- 큰따옴표("") 없이 입력하면 숫자로 인식합니다.

- 하지만 숫자라고 해도 큰따옴표로 묶으면 문자열로 인식하므로 주의해야 합니다.

typeof(10) // 'number' 숫자
typeof("10") // 'string' 문자
typeof(3.145) // 'number' 숫자

문자열(string)

- 작은따옴표(' ')나 큰따옴표("")로 묶은 데이터를 의미합니다.

- 작은따옴표이든, 큰따옴표이든 문자열의 앞뒤에 붙이는 따옴표는 같아야합니다.

typeof("안녕하세요") // O
typeof('안녕하세요') // O
typeof("안녕하세요') // X  위줄에서 문자표가 닫히지 않았기 때문에
typeof('안녕하세요") // X  아랫줄의 큰따옴표에서 닫히는 모습이다. (초록색이 모두 문자열로 인식된 상황)

- 만약 문자열 안에 다른 문자열을 포함시켜야 할 때는 따옴표가 중복되지 않도록 안에 포함되는 문자열은 겉에 쓴 것과 다른 따옴표로 묶어 표현해야 합니다.

- 따옴표만 있고 내용이 없어도 문자열인데, 이러한 문자열을 '빈 문자열'이라고 합니다.

논리형(Boolean)

- 참이나 거짓값을 표현하기 위한 데이터 유형으로, '불리언 유형'이라고도 합니다.

- 논리형에서 사용할 수 있는 값은 true와 false이고 값은 지정한 조건에 맞는지의 여부를 확인하는 조건식에서 많이 사용합니다.

- 콘솔 창에 다음과 같이 입력하면 10이 2보다 크므로 true값이 나타납니다.

10>2	// true

 

undefined,null

- undefined는 값이 할당되지 않았을 때 변수의 초깃값입니다.

- undefined는 값이면서 동시에 자료형입니다.

- 예를 들어 다음의 소스처럼 변수를 선언만 하고 값을 할당하지 않은 상태에서 프로그램에 사용하면 초깃값을 undefined가 나타납니다.

let userName
console.log(userName)	// undefined

- null도 값이면서 동시에 자료형입니다.

- 언뜻보면 undefined와 비슷해 보이지만 구별해서 생각해야 하는 개념입니다.

- null은 값이 없거나 유효하지 않은 값이라는 의미입니다.

- 반면 undefined는 빈 값인지, 유효한 값인지 정할 수 없는 상태입니다.

- 정리하자면 undefined는 변수를 만들기만 하고 값을 할당하지 않았을 때 자바스크립트에서 자동으로 부여하는 초깃값이며, null은 변수     에 값이 없거나 유효하지 않다는 의미로, 자바스크립트에서 반환하거나 사용자가 할당할 수 있는 값입니다.

심벌(symbol)

- 에크마스크립트 2015에 새롭게 추가된 원시 유형의 자료형으로, 다른 자료형과 다른 특성을 가지고 있습니다.

- 가장 큰 특징은 유일성을 보장한다는 것입니다. 특히 객체 프로퍼티의 키로 사용할 수 있다는 특징이 있습니다.

- 예를 들어 다른 팀원이 만든 객체들을 함께 사용할 경우 객체의 키 이름이 중복될 수 있습니다. 이런 경우에 키 이름을 심벌로 지정하면 서로 충돌하지 않습니다.

- 아직 심벌은 많이 사용되지는 않지만, 이런 자료형이 있다는 것을 알아 두는 것이 좋습니다.

 

객체(object)

- 하나의 변수에 다양한 정보가 포함되어 있는 자료형입니다.

- 중괄호({})안에 모든 정보를 담는데 키와 값으로 하나 또는 여러 개의 쌍을 만들 수 있습니다.

- 그리고 객체 안에서는 여러 개의 '키:값' 쌍을 쉼표(,)로 구분합니다.

객체명 = {
키1:값1,
키2:값2,
키3:값3,
};

배열

- 하나의 변수에 여러 개의 값을 저장할 수 있는 유형이므로 객체입니다. 

- 배열은 대괄호([]) 로 묶고 그 안에 값을 나열하는데, 각 값은 쉼표(,)로 구분합니다. 

- 대괄호 안에 아무 값이 없으면 '빈 배열'이라고 하는데, 이것도 배열입니다.


오늘은 Javascript의 기초 부분인 자료형의 종류에 대해 알아보았습니다.

기초가 튼튼해야 나중에 헷갈리지 않고 잘 할 수 있습니다!!

다 같이 화이팅입니다!!