자바스크립트 공부중인데
크로스 브라우징을 위해
evnt = evnt ? evnt : window.event ;
방식으로 하는건 알고있거든
삼항연산자니까 눈에 잘 들어오잖아
evnt가 True(즉 존재 한다면) evnt를 그대로 넣고 존재하지 않는다(False) 라면 window.event를 넣고
그런데 예제를 보다보니까
evnt = evnt || window.event;
로도 되는데
실행해보니까 되긴하더라.
이건 머릿속에서 흐름을 어떻게 느끼면 될까
||는 or이잖아.
내생각에 evnt || window.event 는 evnt가 True 인지 window.event가 True인지 확인하고
둘중 하나만이라도 True라면 (머 True라는건 존재 하냐 안하냐 이고) 연산결과로 나오는건 결국 Boolean속성의 True Or False 아냐?
좌측 evnt 에 True를 넣어야되는거아냐?
그런데 그게 아니가봐
이거 어떻게 생각해야하나..
크로스 브라우징을 위해
evnt = evnt ? evnt : window.event ;
방식으로 하는건 알고있거든
삼항연산자니까 눈에 잘 들어오잖아
evnt가 True(즉 존재 한다면) evnt를 그대로 넣고 존재하지 않는다(False) 라면 window.event를 넣고
그런데 예제를 보다보니까
evnt = evnt || window.event;
로도 되는데
실행해보니까 되긴하더라.
이건 머릿속에서 흐름을 어떻게 느끼면 될까
||는 or이잖아.
내생각에 evnt || window.event 는 evnt가 True 인지 window.event가 True인지 확인하고
둘중 하나만이라도 True라면 (머 True라는건 존재 하냐 안하냐 이고) 연산결과로 나오는건 결국 Boolean속성의 True Or False 아냐?
좌측 evnt 에 True를 넣어야되는거아냐?
그런데 그게 아니가봐
이거 어떻게 생각해야하나..
쇼커트 이밸류에이숀
event 가 혹시 파라미타로 넘어왔져? ㅋㅋ 매개변수 안넘겨서 줄때 (오버로딩처럼) 초기화하기 위한, 뻔하디 뻔한 루틴이져
객체가 있나 없나 브라우저에서 체크하려고 하는건데. 쟁점은 evnt = evnt || window.event; 이 부분 X = X || Y ;라는 연산방식이 대체 뭘 의미하는지가...
두번째 말함, 쇼커트 이밸류에이숀 , 이래도 못 받아먹으면 뭐 걍 외워
short circuit evaluation