일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |
- IT 지식
- 백준
- 오블완
- 알고리즘
- 톺아보기
- 자바스크립트
- 이해할 수 있는
- 제로베이스
- Do it! 시리즈
- SQLD
- 엘리스코딩
- 개발자북클럽
- 노마드 코더
- 노개북
- 비전공자를 위한
- K-Digital Credit
- boj
- 구름edu
- 자격증
- js
- 프로그래머스
- 노마드코더
- javascript
- CodeStates
- 최원영 저자
- 티스토리챌린지
- nomadcoders
- 공부를 가장한 일기일지도
- SQL 개발자
- 모던 자바스크립트 deep dive
- Today
- Total
개발자를 희망하는 초보의 자기개발 이야기
JavaScript 자료형(Data Type) 본문
JavaScript 자료형(Data Type)
자료형(Data Type)
: 변수에는 다양한 자료형(Data Type)이 있습니다. JavaScript는 다른 언어와 달리 자료형을 별도로 표기하지 않고, 할당된 값에 따라 자동으로 결정 됩니다. 장점이라 생각할 수도 있지만 오류를 발생시킬 수 있기 때문에 단점이 더 크게 작용합니다. 자주 쓰는 자료형은 아래와 같습니다.
1. 숫자 (Number)
: 다른 언어와 달리 정수, 소수를 표현하기 위한 별도의 자료형이 없습니다.
let weight = 67;
let realWeight = 107.3;
2. 문자열 (String)
: 다른 언어와 달리 문자, 문자열을 따로 구분하지 않습니다. 큰따옴표("") 또는 작은따옴표('')로 감싸서 대입합니다.
let name = 'Lee';
let nickName = "Claude Ashil";
let myCar = "'car'"; // 따옴표를 대입해서 넣고 싶다면 바깥의 따옴표는 다른 종류로 감싸야 한다.
let nickName = 'Claude A\'shil'; // 따옴표 안에 같은 따옴표를 넣고 싶을 때 \를 추가하면 된다.
let car = 'car" // (x) 시작과 끝의 따옴표가 다르면 아직 대입이 완료되지 않았다고 판단하여 오류가 발생한다.
3. 객체 (Object)
: 정보를 {키:값} 의 형태로 저장한 것입니다. 자바스크립트는 객체기반의 스크립트 언어이기 때문에 원시 타입(Primitives)을 제외한 나머지 값들(함수, 배열 등)을 객체로 인식합니다. 아래의 두 예시는 같으나 위의 방식으로 가독성 있게 입력합니다.
let person = {
name : 'Lee' ,
age : 34 ,
isStudent : true
};
let person = {name : 'Lee' , age : 34 , isStudent : true}
4. 미할당(undefined)
: 선언한 후 값을 할당하지 않은 변수 혹은 값을 주지 않은 인수에 자동으로 할당되는 값입니다.
let age; // 선언만 한 상태로 대입된 값이 없음. age의 결과값은 undefined
5. 의도적인 빈 값(null)
: undefined와 달리 의도적으로 값이 없다는 것을 나타내는 것입니다. 의도적으로 값을 비울 영역은 undefined가 아니라 null을 할당해야 자바스크립트 엔진의 자동할당과 구분할 수 있습니다.
let age; // 선언만 한 상태로 대입된 값이 없음. age의 값은 undefined
let weight = undefined; // 일부러 undefined를 할당해줌
// 결과는 둘 다 undefiend 이지만 일부러 그렇게 한 건지 놓친 건지 판단이 안 됨.
let age; // 놓친 부분이니 할당해야 되겠다 판단됨.
let weight = null; // 일부러 몸무게는 할당하지 않았다고 판단됨.
6. 참과 거짓 (Boolean)
: 불린, 또는 불리언 이라고도 합니다. 참(true) 또는 거짓(false)을 결과로 반환합니다. 참은 1, 거짓은 0을 의미하기도 합니다.
let result = 6 < 3; // false
let ending = true;
자료형 (Data Type) 알아내기
: typeof는 변수의 데이터 타입을 확인할 수 있는 연산자입니다. 배열은 특이하게도 typeof에서 객체로 결과가 반환됩니다. 자바스크립트 자체가 기본적으로 모든 데이터를 객체형으로 처리하기 때문인데 정확한 배열을 판단하기 위해서는 별도의 메서드(특정 기능을 하는 코드)를 사용해야 합니다.
typeof 123; // 'number'
typeof '문자'; // 'string'
typeof falase; // 'boolean'
typeof function a(){}; // 'function'
typeof undefined; // 'undefined'
typeof [1, 2, 3]; // 'object'
typeof {key:value}; // 'object'
typeof null; // 'object'
typeof NaN; // 'number'
: 배열의 정확한 판단을 위해서는 Array.isArray();메소드를 사용해야 합니다. 괄호 안에 판단하고자 하는 내용이나 변수 등을 넣으면 됩니다. 결과는 true 또는 false로 반환됩니다.
let a = [1, 2, 3];
Array.isArray([1, 2, 3]); // true
Array.isArray(a); // true
Array.isArray(1, 2, 3); // false
Array.isArray(A); // false
'프론트엔드(Front-end) > JavaScript' 카테고리의 다른 글
JavaScript 문자열(String) (0) | 2020.12.20 |
---|---|
JavaScript 조건문(Condition) (0) | 2020.12.20 |
JavaScript 연산자(operator) (0) | 2020.12.20 |
JavaScript 함수(Function) (0) | 2020.12.14 |
JavaScript 변수(Variable) (0) | 2020.12.13 |