본문으로 바로가기

javascript void 연산자

category JavaScript/Core & 개념ㆍ용어 2016. 9. 29. 09:30

void 연산

void는 단항 undefined 연산자입니다. 

피연산자로 무엇을 지정하든간에 연산의 결과는 undefined 값이 됩니다.




구체적인 예를 살펴보도록 하겠습니다.


javascript
// 피연산자가 숫자
console.log(void 0); // undefined 가 기록

// 피연산자가 문자열
console.log(void "문자열"); // undefined 가 기록

var x = 0;
void x++; // 피연산자를 먼저 평가하기때문에 x 는 증가됩니다.
console.log(x); // 1 이 기록

console.log(void(x)); // 피연산자를 괄호로 감싼 것은 잘 실행되어 undefined 가 출력


어디에 쓰는지 알기 어려운 연산자이지만 클라이언트 사이드 자바스크립트에서 몇가지는 관용구로 사용하고 있습니다.



다음의 예는 HTML 의 a 태그를 클릭할 때 폼 안의 내용을 송신하는 자바스크립트 코드입니다.


html
<a href="javascript:void(document.form.submit())">
    HTML 폼을 송신하지만 화면 이동을 하지 않습니다.
</a>


href 속성에 쓴 식에 평가값이 있으면 a 태그의 작용으로 URL 로 해석하여 해당페이지로 화면 이동을 하게 합니다.


이러한 a 태그의 작용을 멈추게 하려면 href 속성에 쓴 식이 undefined 값이 되도록 하면 됩니다.



Jaehee's WebClub