scope
var : function
const : 블록 내({ }), 값 재할당 불가능
let : 블록 내({ })
변수의 유효범위는 좁을수록 좋다. var의 남발 지양
등치 연산자
== : 비교 전에 강제 형변환
EX) 123 == '123' 의 결과는 true
=== : 형변환 없이 그대로 비교(다른 언어에서의 ==)
EX) 123 === '123' 의 결과는 false
레이블 문 : 내부 루프에서 외부 루프 break, 일반 코드 블록을 break
ex)
mindeop{
console.log(1);
break mindeop;
console.log(2);
}
console.log(Done!);
// result >> 1\nDone!
outer: for (var i=0; i<6; i++){
for (var j=0; j<7; j++){
if(j===5) break outer;
console.log(j)
}
console.log("outer play", i)
}
이중 for 문에서, 내부 루프에서 외부 루프를 break하는 방법으로 유용. 이 외의 활용은 일반적으로 비권장. 가독성 나빠지고 오류 위험