parseInt( "11", 2) = 3
NaN : Not a number
Infinity : 무한대 1/0 = Infinity
1==true : true (type이 오토케스팅 됨)
1===true: false (===: type 강제변환 방지: type까지 비교함. )
var names; //names == undefined임.
이 때, !names == !undefined //둘다 true임.
setTimeout(func, 100) //0.1초 후 실행.
setInterval(func,100) //0.1초씩 반복
for (var i in a) //a[i]사용가능, var a=["dog","cat","chicken"]
<주의>
var z = 0.1 + 0.2; //z=0.300....4 모든 수가 64bit float이라 계산에 오류발생 가능.
javascript는 head나 body에 모두 사용가능하다.
==의 반대말은 != ( <>아님)
javascript는 당근 case Sensitive하다.
<JS object>
var person = {
firstName: "John",
lastName : "Doe",
id : 5566,
fullName : function() {
return this.firstName + " " + this.lastName;
}
}; ==> prototype기반 function보단 사용용도가 약하지만, JSON은 큰 장점.
<array>
[1,2].concat([2,3]); //Array.concat => [1,2,2,3] 혹은 arrA.concat(arrA)
[2,3,4].join() // toString.. "2,3,4"
<기타>
navigator.userAgent;
navigator.appName ; 브라우저 name
window.btoa("abc") //=> base64 encoding.
<< My experience >>
new window['Pattern'+ i]() //= new Pattern1 ~ new Pattern6
apply(obj, [a,b]) or call(obj, a,b) // 0bj->this, (a,b) this chapter 참조.