or 의 사용
var val = predefined_value || "value";
or 연산자는 연결된 값을 앞에서부터 비교한다.
이 때 주의할 점은 undefined, null, 숫자 0은 자동으로 false로 변환된다는 점이다.
ex) 암호로 0을 입력할 경우 "암호를 입력하지 않았습니다." 라는 에러 메세지를 띄우지 않으려면 이런 변환을 미리 예상해야한다.
코드에서는 predefined_value 라는 변수가 정의되어있지 않으면 “value”이라는 값을 val 이라는 변수에 할당한다.
or 연산자의 멋진 사용은 이벤트 처리 코드이다.
보통 IE와 FF에서 이벤트에 대한 정보를 넘기는 방법이 다르다.
어떤 경우에는 이벤트 핸들러에 파라미터로 넘기고
어떤 경우에는 window.event 에 세팅한다. 이럴 경우 다음과 같이 할 수 있다.
function eventHandler(e) {
e = e || window.event;
// ... some code
}