[JavaScript] Data Type

박우현·2020년 12월 28일
0
post-thumbnail

👌 Data Type

자바스크립트의 데이터타입에 대해 알아보자

✔ Variable

let을 사용하여 변수를 지정

let dog = 'dooddi';

*var이라는 타입도 존재하지만, var을 사용하지 말아야 하는 이유는?

  • var은 호이스팅이 존재한다. 호이스팅은 아래에 있는 선언을 위로 끌어올려 선언하는 것. var을 사용하면 아래와 같이 age를 선언하기 전에 사용이 가능하다.
age = 4;
var age;

			//let은 불가능
name = 4; 		// 에러 발생
let name;
  • var은 block scope가 존재하지 않는다. 스코프 밖에서도 var 변수를 사용할 수 있다.
{
   var age = 4;
}
console.log(age); // scope 밖에서도 호출이 가능

✔ Const

변하지 않는 const를 선언

const daysInWeek = 7;

✔ Number

자바스크립트에는 number 타입 한가지만 존재

const age = 24;
const height = 170.3
const infinity = 1 / 0; 	// infinity
const negativeInfinity = -1 / 0;// -infinity
const nAn = 'nAn' / 2; 		// NaN

✔ String

const char = 'c'			
const name = 'dooddi';
const hi = 'hi ' + 'dooddi';
//`과 ${}을 사용해 좀 더 편리하게 사용가능
const hhi2 = 'hi ${dooddi}!';		

✔ Boolean

0, null, undefined, NaN은 모두 false로 취급

const isDog = true;
const isOlderThan = 3 < 2;	//false

✔ Null and Undefined

let nothing = null;		//null
let x;				//undefined
let x2 = udefined;		//undefined

✔ Symbol

고유한 identifier을 생성

const s1 = Symbol('id');
const s2 = Symbol('id');
console.log(s1 === s2);		//false
const sf1 = Symbol.for('id');
const sf2 = Symbol.for('id');
console.log(sf1 === sf2);	//true

✔ Object

const dooddi = {name: 'dooddi', age: 3};
//`dooddi`가 가리키는 object의 pointer는 `const`이므로 변경이 불가능하지만, dooddi.name 또는 dooddi.age는 변경 가능
dooddi.name = 'woohyun';
dooddi.age = '24';

👍 참고 사이트

0개의 댓글