var & Hoisting
- Hoisting : 아래 있는 선언을(만) 끌어올리다
function hello_1(){
console.log('hello_1')
}
hello_1();
hello_2();
function hello_2(){
console.log('hello_2')
}
age = 6;
age++;
console.log(age);
var age;
console.log(name);
name = 'Mark';
console.log(name);
var name = 'Kane'
console.log(name);
name = 'Mark';
console.log(name);
let name;
자료형
- 동적 타이핑 : 정의되는 값에 따라서 type 달라진다
let whatever = 'Mark';
whatever = 37;
wharever = true;
기본 타입(Primitive values)
Boolean
const isTrue = true;
const inFalse = false;
console.log(isTrue, typeof isTrue);
console.log(isFalse, typeof isFalse);
const a = new Boolean(false);
console.log(a, typeof a);
if (a){
console.log('false?'); }
const b = Boolean(false);
console.log(b, typeof b);
if (b){
console.log('false?');}
Null & Undefined
const a = null;
console.log(a, typeof a);
let b;
console.log(b, typeof b);
if (a == b){
console.log(a==b);}
if (a === b){
console.log(a===b);}
Number
const a = 37;
console.log(a, typeof a);
const b = 96.7
console.log(b, typeof b);
const c = NaN
console.log(c, typeof c);
const d = Number('Mark')
console.log(d, typeof d);
const e = Number('37')
console.log(e, typeof e);
String
const a = 'Mark';
console.log(a, typeof a);
const b = 'Mark' + 'Lee';
const c = a + 'Lee';
console.log(c, typeof c)
const d = `${a} Lee`;
console.log(d, typeof d);
Symbol(ECMAScript6)
const a = Symbol();
const b = Symbol(37);
const c = Symbol('Mark');
const d = Symbol('Mark');
console.log(a, typeof a);
console.log(c === d);
new Symbol();
- 고유값을 만들때 주로 사용
- 객체(object)에 대해서는 뒤에서 다시 다룰 예정