1. let
- 일반적으로 쓰이는 변수 선언 타입, 값 변경 가능.
- 읽고 쓰기 가능
2. const
- 값이 고정 변수 타입, 값 변경 불가능.
- 고정인 값으로 선언할 때.
- 보안상 이유로 좋음.
- 실수 방지.
- 읽기만 가능
3. var
- 제발 쓰지마.
- var은 규칙이 없음. 지 마음대로임.
4. block 안과 밖
let globalName = 'global name';
{
let name = 'ellie';
console.log(name);
name = 'hello';
console.log(name); // hello
}
console.log(name); // empty
console.log(globalName); // global name
5. string
- 기호를 이용해 편하게 작성 가능
const brendan = 'brendan';
const greeting = 'hello ' + brendan;
// 아래와 같이 편하게 작성 가능
console.log(`value : ${greeting}, type: ${typeof greeting}`);
6. Infinity, -Infinity, NaN
- Infinity, -Infinity, NaN와 같은 값 조심.. 에러 날 수 있음.
const infinity = 1 / 0;
const negativeInfinity = -1 / 0;
const nAn = 'not a number' / 2;
console.log(infinity); //Infinity
console.log(negativeInfinity); //-Infinity
console.log(nAn);//NaN
7. number
- 정수, 실수 데이터 타입 number
8. boolean
- false : 0, null, undefind, NaN, ''
- true : any other value
9. null
let nothing = null;
console.log(`value : ${nothing}, type : ${typeof nothing}`) // value : null, type : object
10. undefined
let x;
console.log(`value : ${x}, type: ${typeof x}`) // value : undifined, type : undifined
11. symbol
- symbol이란 타입도 있네
- 고유한 식별자, 우선순위를 주고싶을 때
const symbol1 = Symbol('id');
const symbol2 = Symbol('id');
console.log(symbol1 === symbol2); // false
const gSymbol1 = Symbol.for('id');
const gSymbol2 = Symbol.for('id');
console.log(gSymbol1 === gSymbol2); // true
// 출력 할 때 description 사용
console.log(`value: ${symbol1.description}, type : ${typeof symbol1}`) // value : id, type : symbol
12. object
- 할당된 오브젝트는 다른 오브젝트로 할당이 되지 않음.
- 값 변경 가능.
- JSON 데이터랑 햇갈리네 - JSON은 키가 "key" 임
const ellie = {name : 'ellie', age: 20};
console.log(ellie); //ellie
ellie.name = 'joonghyun';
console.log(ellie) //joonghyun
'JavaScript' 카테고리의 다른 글
[JavaScript] 7. 오브젝트 넌 뭐니? (0) | 2021.10.22 |
---|---|
[JavaScript] 6. 클래스와 오브젝트의 차이점(class vs object), 객체지향 언어 클래스 정리 (0) | 2021.10.21 |
[JavaScript] 5. Arrow Function은 무엇인가? 함수의 선언과 표현 (0) | 2021.09.01 |
[JavaScript] 기본 문법 2 (0) | 2021.07.28 |
[JavaScript] async와 defer의차이 및 use strict (0) | 2021.07.28 |