TIL 3 - JavaScript (Data Types)

chachacha·2021년 3월 26일
0

JavaScript

목록 보기
2/8
post-thumbnail

Data Types

프로그래밍에서 데이터 타입은 사용할 수 있는 데이터의 종류를 말한다.

자바스크립트 데이터 타입 종류

  • 원시 타입(primitive data type): 변경이 불가능함(immutable) 그리고 값에 의한 전달(pass-by-value)
    • boolean
    • null
    • undefined
    • number
    • string
    • symbol

1. boolean

boolean의 값을 나타내는 것은 true와 false 밖에 없다.

let dog = true;
let cat = false;
console.log(typeof dog); // boolean
console.log(typeof cat); // boolean

2. null

null은 의도적으로 값이 없음을 나타냅니다. 코드에서는 null로 표현 됩니다. 자바스크립트는 case-sensitive하므로 null은 Null과 NULL이랑은 다르다.

let dog = 'cat';
dog = null; // cat 정보가 제거됨

함수가 호출되었을때 값을 반환할 수 없을 때 null을 반환하기도 한다.

let file = document.querySelector('.myFile');
console.log(file); // null

자바스크립트의 설계상의 오류로 인해 typeof 연산자로 null 값을 연산해 보면 object가 나온다.

let dog = null;
console.log(typeof dog); // object

값이 null인지 확인할때는 일치 연산자(===)를 꼭 사용하여야 한다.

let dog = null;
console.log(typeof dog === null); // false
console.log(dog === null); // true

3. undefined

선언 이후 값을 할당하지 않은 변수는 undefined 값을 가진다.

let dog;
console.log(dog); // undefined

4. number

자바스크립트에서 숫자는 정수와 부동소수점만 존재한다.

let number = 8; // integer
let price = 7.99; // floating point number

5. string

문자열 타입은 텍스트 데이터를 나타낸다. 자바스크립트의 문자열은 원시 타입이므로 변경 불가능(immutable)하다.

let string = 'dog';
string[0] = 'd'; // immutable
console.log(string); // string

6. symbol

심볼은 ES6에서 새롭게 추가된 데이터 타입이다. 심볼 값은 유일한 값이므로 심볼 값을 property key로 갖는 property는 어떠한 propery와도 충돌하지 않습니다.

const obj = {};
const mySymbol = Symbol('mySymbol');
obj[mySymbol] = 123;
console.log(obj[mySymbol]); // 123

Reference
https://poiemaweb.com/js-data-type-variable
https://www.codecademy.com/learn/introduction-to-javascript/modules/learn-javascript-introduction/cheatsheet

0개의 댓글