티스토리 뷰

JavaScript

자바스크립트 데이터 타입 Data Types

IT Knowledge Share 2021. 9. 14. 23:39
반응형

자바스크립트에 할당되는 데이터의 타입으로는 여러 가지가 올 수 있습니다.

 

기본적으로 오게되는 데이터 타입은 다음과 같습니다.

1. 숫자 타입

2. 문자열 타입

3. 객체 타입

4. 배열 타입

let price = 100;                           
let Name = "John";                  
let student = {Name:"John", Phone:"010-1111-1111"};
const cars = ["Saab", "Volvo", "BMW"];

특히 데이터 타입 사이에 연산자를 사용할 경우 주의해야 합니다.

꼭 알고가셔야 할 사항은 숫자와 문자열을 더하게 되면, 숫자 또한 문자열로 취급된다는 사실입니다.

그리고, 자바스크립트에서는 왼쪽에서 오른쪽으로 표현식을 계산하기에, 그 결과에 주의해야 합니다.

let home = 233 + "blue castle mansion";
let home2 = "blue castle mansion" + 233;

==> 모두 233blue castle mansion 또는 blue castle mansion233의 문자열

//자바스크립트는 왼쪽에서부터 표현식을 계산하니 결과에 주의!
let x = 16 + 4 + "blue"; //20blue
let x = "blue" + 16 + 4; //blue164

문자열 타입을 표현할 때, 더블 따옴표나 싱글 따옴표 모두 사용이 가능합니다. 그리고 더블/싱글 따옴표 안에 또 다른 더블/싱글 따옴표도 사용할 수 있습니다.

let Name1 = "홍길동";   // 더블 따옴표
let Name2 = '아무개';   // 싱글 따옴표

let Person1 = "내 이름은 '홍길동'";   
let Person2 = '내 이름은 "아무개"';

문자열에서 또 중요한 부분이 이스케이프(escape) 입니다.

백슬래쉬(\, )를 사용하여, 따옴표를 사용하거나 백슬래쉬 자체를 사용할 수 있습니다.

아래에는 주요 이스케이프 캐릭터를 모아 놓은 것입니다.

' ' 단일 따옴표
" " 더블 따옴표
백슬래쉬
\b Backspace 뒤로가기
\n New Line 줄바꿈

 

조금 더 깊게 들어가보도록 하겠습니다.

반응형

자바스크립트에서 어떤 값을 담을 수 있는 데이터 타입은 다음과 같습니다.

1. string
2. number
3. boolean
4. object
5. function

 

다음의 2가지 데이터 타입은 값을 담을 수 없습니다.

1. null
2. undefined

 

자바스크립트에는 6가지 유형의 객체가 있습니다.

1. Object
2. Date
3. Array
4. String
5. Number
6. Boolean

 

다음은 원시 데이터(Primitive Data)라고 일컫는데, 이들 유형은 단순 데이터 타입으로 추가적인 프로퍼티나 메소드가 없습니다.

1. string
2. number
3. boolean
4. undefined 

 

원시 데이터를 typeof 메소드를 통해 알아보면, 리턴 값은 그 자체로 string, number, boolean, undefined가 됩니다.

그러나 object 및 function 타입의 리턴 값은 다르니 주의하시기 바랍니다.

typeof {name:'John', age:34} // Returns "object"
typeof [1,2,3,4]             // Returns "object" 
typeof null                  // Returns "object"
typeof new Date()            // Returns "object"
typeof function myFunc(){}   // Returns "function"

undefined와 null은 값이 같지만 유형이 다르니, 이 또한 주의하시기 바랍니다.

typeof undefined           // undefined
typeof null                // object

null === undefined         // false
null == undefined          // true
반응형
댓글