자바스크립트 데이터 타입
타입이란 프로그램에서 다룰 수 있는 값의 종류를 의미합니다.
1. 숫자형(number)
자바스크립트는 다른 언어와 달리 정수와 실수를 따로 구분하지 않습니다. 모든 수를 실수 하나로만 표현한다. 최고👍🏻
2.문자열형(string)
자바스크립트에서는 문자열을 쌍따옴표나 따옴표로 둘러싸인 문자의 집합을 의미합니다.
const str1 = "오석민 : '여러분 반갑습니다!'";
const str2 = '오석민 : "여러분 반갑습니다!"';
const str3 = "\"안녕하세요. \n자바스크립트\"";
const str4 = `자바스크립트에서는 문자열을 쌍타옴표나 따옴표로
둘러싸인 문자의 집합을 의미합니다.`; // `(백쿼트)
문자열을 혼합해서 사용할 때 백쿼트를 사용하면 편해진다. 변수는 ${변수명}으로 호출하면 된다.
3.불리언형(boolean)
참(true)과 거짓(false)으로 표현되는 값이다.
const b = true;
4. undefined, null 형
- undefined란 "타입이 정해지지 않은 것을 의미한다."(변수 선언 후 값이 정해지지 않았을 경우)
- JavaScript는 다른 언어들과 다르게 변수(let)로만 생성하기 때문에(java는 int, str ... 등 처음부터 데이터타입으로 선언한다. 혹은 서버에서 값을 못 받아내서 출력이 안될 수도 있다. 그러면 undefined로 나온다.) - null은 object 타입이며 아직 "값"이 정해지지 않은 것을 의미합니다.
let a = 10; // 변수 혹은 스칼라(파이썬 혹은 데이터쪽에서 변수의 값이 하나일 때 부른다)
let a = [값, 값, 값 ...] // 배열
let a = {값, 값, 값 ...} // 객체
let a = null; // 객체를 저장할 준비를 한다는 것을 의미한다. 허나 지금은 값이 정해져있지 않다.
let a = {}; // 빈 객체가 a에 들어가 있는 값이다.
5.심볼형(Symbol)
ECMA Script 6 에서 추가된 데이터 타입입니다. 유일하고 변경 불가능한 기본값을 만듭니다. 객체 속성의 key값으로도 사용될 수 있습니다.
const sym1 = Symbol('a');
const sym2 = Symbol('a');
let a = 10;
let b = 10;
console.log(a == b); // true // == 같다, = 대입
console.log(sym1 == sym2 ); // false값이 출력된다.
아이덴티티(identity)를 각 각 주기때문에 같은 값을 주어도 들어가는 키(key)값이 다르기 때문에 false가 나온다
만일 true가 나오고 싶다면
const sym1 = Symbol();
const sym2 = sym1;
console.log(sym1 === sym2);
// true가 출력된다.
6.객체형(Object)
여러 속성을 하나의 변수에 저장할 수 있도록 해주는 데이터 타입이다.
(key / value pair 저장할 수 있는 구조) 👈🏻 사물함이라고 생각해보면 된다. 사물함 안에 들어가 있는 내용물(ex 국어책)은 같을 수 있지만 사물함의 열쇠는 다르다.
let user = new Object();
let user = {};
let user = {"name":"김사과", "age":20};
------- -------
key value
console.dir(변수명); // 객체 정보를 볼 수 있다.
객체 안의 값을 출력하고싶다면
console.log(user.name);
console.log(user.age);
변수명.key 를 사용하여 출력해준다.
'Front-End > JavaScript' 카테고리의 다른 글
[JavaScript] 자바스크립트 연산자 모든 것 (0) | 2020.12.18 |
---|---|
[JavaScript] 자바스크립트 대화상자 (prompt, alert, confirm) (2) | 2020.12.18 |
[JavaScript] 자바스크립트 타입변환, 묵시적 타입변환, 명시적 타입변환 (0) | 2020.12.13 |
[JavaScript] 변수 let, 상수 const, var 차이 (0) | 2020.12.11 |
[JavaScript]자바스크립트(JavaScript) 시작, 특징, 출력, 주석 (0) | 2020.12.10 |
댓글