자바스크립트는 동적 타입을 가지기 때문에 C, JAVA와 달리 var 하나의 변수 선언자만 존재한다.
// 여러 변수를 한번에 선언 가능
var num = 1, a = '온애드', b = '화이팅';
// 선언만 한 경우 undefined 값이 됨.
var qwer;
console.log(qwer); // -> undefined
선언과 동시에 대입하는 코드는 끌어올려지지 않음.
// 선언과 동시에 대입하는 코드는 끌어올려지지 않음.
console.log(x); // -> undefined
var x = 5;
console.log(x); // -> 5
var
선언자 하나만으로 모든 변수를 선언할 수 있다.부동소수점의 정수부가 0인경우는 0 생략가능
var flaot_point = 0.14;
var float_point2 = .14;
console.log(float_point == float_point2); // -> true
'문자열'
, "문자열"
""
사용, 자바스크립트 코드에는 ""
사용하는 것이 권장됨.true
, false
두가지가 존재함null
, undefined
두가지.undefined
는 정의되지 않은 상태. null
은 아무것도 없음 이라는 의미. 파이썬의 None
과 같음.자기자신을 제외한 어떤 값과도 다른 유일 무이한 값. Symbol()은 호출시 마다 새로운 값을 생성
심벌의 생성
var sym1 = Symbol();
var sym2 = Symbol();
console.log(sym1 == sym2); // -> false
var heart = Symbol("하트"); // Symbol에 설명을 덧붙이기
// symbol의 설명을 확인
console.log(heart.toString()) // -> Symlbol("하트")
Symbol 은 플래그값(-1, 0, 1 등)을 라벨링 하는데에 사용하기 용이함.
var isonad = 1;
var isnotonad = -1;
// 심볼을 사용한다면
var isonad = Symbol("온애드맞음");
var isnotonad = Symbol("온애드아님");
\n
이아니라 그냥 enter
키를 치면 됨.플레이스 홀더는 템플릿 리터럴 안에서 ${...}
과 같이 사용할 수 있다.
var now = new Date();
var text = `today is ${now.getMonth() + 1}월, ${now.getDate()}일`;
console.log(text);
// -> today is 3월, 12일