- String(문자열)
- Number(숫자)
- Boolean(true/false)
- Undefined
- Null
- Symbol(ECMAScript 6에 추가됨)
typeof
연산자를 적용하면 다음 문자열 중 하나를 반환합니다.i. "undefined": 정의되지 않은 변수
ii. "boolean"
iii. "string"
iv. "number"
v. "object": 함수를 제외한 객체 또는 "object"
vi. "function"
typeof
연산자는 다음과 같이 사용합니다.let msg = "message"; console.log(typeof msg); //"string" console.log(typeof 100); //"number"
•
typeof null
->"object"
• null 이라는 데이터 타입이 object로 반환된다.
• null은 빈 객체를 참조하고 있어서 그렇다.
console.log(typeof []);
• 배열의 type을 확인해보면
"object"
입니다.
• 왜냐하면 사실 배열은 확장된 객체이기 때문이다.
• 일단typeof
연산자로 배열을 확인하면"object"
가 출력된다는 것만 기억하기
• Number라는 데이터 타입은 숫자를 의미합니다.
• Number 타입에서 중요한 것은 연산입니다.
• 산술 연산자를 사용하여 Number 타입에 대한 연산은 아래와 같다.
1 + 1 //더하기 2 - 1 //빼기 2 * 4 //곱하기 6 / 2 //나누기
• 더하기(+)는 왼쪽 값과 오른쪽 값을 더해서 하나의 값을 만든다는 점에서 이항 연산자라고 부른다.
• 이항 연산자 중에서 산수를 하는 것이기 때문에 산술 연산자라고 부른다.
• boolean은 단 두 개의 데이터로 이루어진 데이터 타입이다.(
true
/false
)
• boolean 데이터 타입은 조건문과 반복문에서 유용하다.
• 다른 데이터 타입이 boolean 값으로 변환되는 경우가 있다.
✔️
true
로 변환되는 값• 문자열: 비어 있지 않은 모든 문자열
• 숫자: 0이 아닌 모든 문자
• 객체: 모든 객체({ }
,[ ]
포함)
✔️
false
로 변환되는 값• 문자열 :
" "
(빈문자열)
• 숫자: 0,NaN
• 객체:null
•undefined
• undefined 데이터 타입은 말 그대로 정의되지 않은 데이터 타입입니다.
•let
,const
키워드를 사용해서 변수를 정의할 때 초기화 하지 않았다면, 즉 변수를 선언만 하고 값을 할당하지 않았다면 변수에는undefined
가 할당된다.
let mgs; console.log(mgs === undefined);//true (msg는 선언만 하고, 초기화 하지 않았다)
•
null
타입은 데이터 타입 중 하나.
• 하지만 콘솔에typeof null
로 확인해보면"object"
라고 나온다.
•null
은 말 그대로 아무것도 아닌 빈 객체를 가리키고 있어서"object"
라고 나온다.
• 마지막은 객체(object) 데이터 타입이다.
• 객체는 키(key)와 값(Value)의 조합으로 이루어진 데이터이다.
• 중괄호로 감싸진 key-value(property)의 형태를 갑는다
const person = { name : "wecode", age: 30, skills : ['HTML','CSS','Javascript'] }