자료형이란?
자료형은 컴퓨터가 처리하는 자료의 형태를 말합니다. 자바스크립트의 자료형은 값이 하나인 '기본형'과 여러 값을 한 번에 담고 있는 '복합형'으로 구분할 수 있습니다. 자료형의 종류에는 숫자형, 문자형, 논리형, undefined, null, 배열, 객체가 존재합니다.
1. 숫자형 - 정수
자바스크립트에서 숫자는 정수와 실수로 나눌 수 있습니다. 먼저 정수에 대해서 알아보자면 정수는 소수점이 없는 숫자를 가리킵니다. 정수는 표현하는 방법에 따라 10진수, 8진수, 16진수 3가지 유형으로 나누기도 합니다.
2. 숫자형 - 실수
실수는 소수점이 있는 숫자를 말합니다. 자바스크립트에서 소수점 연산을 할 때에는 주의해야 할 점이 있습니다.
예를 들어 설명하자면 0.1 + 0.2를 계산하면 0.3이 나오는 것이 아닌 0.30000000000000004 라는 값이 나오게 됩니다.
이러한 값이 나오게 되는 이유는 부동 소수점 숫자가 컴퓨터 시스템에서 표현되고 저장되는 방식 때문입니다.
자바스크립트는 "배정밀도 부동 소수점 형식"이라고도 하는 binary64 형식을 사용하여 숫자 값을 저장합니다. 이 형식에서 부동 소수점 숫자는 분수 부분과 지수 부분에 대해 고정된 수의 이진수(비트)로 표시됩니다.
그러나 모든 십진수를 이진법으로 정확하게 표현할 수 있는 것은 아닙니다. '0.1'과 '0.2'의 경우, 이 소수점 이하 자릿수는 이진수 형태로 반복되는 소수 부분을 가지고 있기 때문에 이진수로 정확하게 표현할 수 없습니다.
자바스크립트에서 덧셈 0.1 + 0.2를 수행하면 결과는 0.3에 매우 가깝지만 정확히 같지는 않은 이진 근사값입니다.
3. 문자형(String)
문자형은 작은따옴표(')나 큰따옴표(")로 묶은 자료를 말합니다. 물론 숫자도 작은따옴표나 큰따옴표로 묶으면 문자형으로 인식하게 됩니다.
문자형은 실무에서 스트링(String)이라고 부르기도 합니다.
4. 논리형 (Boolean)
논리형은 참(True)과 거짓(False)이라는 값을 표현해주는 자료형입니다. 주로 조건을 확인할 때 많이 사용됩니다.
간단한 예시와 함께 살펴보면
a가 5, b가 10이라고 설정해주었을 때 a > b 의 식은 틀린 식이기 때문에 false를 출력하게 됩니다.
5. undefined와 null
undefined은 선언되었지만 아직 값이 할당되지 않은 변수에 할당되는 기본값입니다. 또한 명시적으로 값을 반환하지 않는 함수와 존재하지 않는 개체 속성에 액세스할 때 반환되는 값입니다.
null은 개체 값이 의도적으로 없음을 나타냅니다. 정의되지 않음과 달리 null은 의미 있는 값이 없음을 나타내기 위해 변수에 명시적으로 할당됩니다.
위 소스를 보면 값을 할당하지 않고 'name'이라는 변수를 선언합니다. name을 콘솔에 기록하면 undefined가 출력됩니다. 이는 변수 name이 존재하지만 할당된 값이 없음을 나타냅니다.
firstName과 lastName이라는 두 가지 속성을 가진 person 객체를 생성합니다. 이 경우 명시적으로 null 값을 lastName 속성에 할당합니다. person.firstName에 액세스하면 예상대로 "John"이 출력됩니다. 그러나 person.lastName에 액세스하면 null이 출력됩니다. 이는 'lastName' 속성에 의도적으로 의미 있는 값이 할당되지 않았음을 나타냅니다.
undefined 및 null을 적절하게 사용하면 코드에서 다른 의미를 전달할 수 있습니다. undefined는 일반적으로 초기화되지 않은 값 또는 값이 없음을 나타내고 null은 개체 값이 의도적으로 없음을 나타냅니다.
6. 배열
자바스크립트에서 배열은 값 모음을 저장하고 조작할 수 있는 데이터 구조입니다. 배열은 단일 변수에서 여러 관련 값을 구성하고 관리하는 데 사용됩니다. 배열은 서로 다른 데이터 유형의 값을 보유할 수 있고 동적 길이를 가질 수 있습니다.
즉, 필요에 따라 요소를 추가하거나 제거할 수 있습니다.
배열은 위 예시처럼 배열 리터럴([]) 또는 Array 생성자를 사용하여 만들 수 있습니다.
6.1 배열의 특정 값을 가져올 때 사용하는 인덱스
배열에 저장된 이름을 하나씩 가져오려면 인덱스를 사용하면 됩니다. 인덱스를 사용하려면 배열 이름과 대괄호([ ]) 안에 0이나 1, 2 같은 숫자를 넣어서 함께 사용하면 됩니다. 그렇게 사용하면 해당 위치의 값만 가져오게 됩니다.
이때 사용한 0, 1, 2, 3을 배열의 인덱스라고 부릅니다. 인덱스는 0부터 시작합니다.
7. 객체
자바스크립트에서 객체는 데이터를 키-값 쌍으로 저장하고 조작할 수 있는 데이터 구조입니다. 개체는 엔터티 또는 개념을 나타내는 데 사용되며 관련 데이터 및 기능을 구성하는 방법을 제공합니다.
객체는 객체 리터럴({}) 또는 Object 생성자를 사용하여 객체를 생성할 수 있습니다.
객체는 실제 엔터티를 모델링하고 관련 데이터 및 동작을 구성하는 강력한 방법을 제공합니다. 일반적으로 복잡한 데이터 구조를 표현하고, 기능을 캡슐화하고, 자바스크립트 애플리케이션에서 재사용 가능한 구성 요소를 구축하는 데 사용됩니다.
'JavaScript' 카테고리의 다른 글
[자바스크립트] 연산자(2) (0) | 2023.07.05 |
---|---|
[자바스크립트] 연산자(1) (0) | 2023.07.04 |
[자바스크립트] 변수 (0) | 2023.06.16 |
[자바스크립트] 자바스크립트의 개념과 특징 (0) | 2023.05.29 |
[프론트엔드] 네트워크, 인터넷, 웹, 자바스크립트 (0) | 2023.02.16 |