void();

void是一元運算符,它出如今操做數以前,操做數能夠是任意類型,操做數會照常計算,但忽略計算結果並返回undefined。因爲void會忽略操做數的值,所以在操做數具備反作用的時候使用void來讓程序更具語義
 
console.log(void 0); // undefined
console.log(void(0)); // undefined
 
常見的做用:
 
1.替代undefined
 
因爲undefined並非一個關鍵字,其在IE8-瀏覽器中會被重寫,在高版本函數做用域中也會被重寫;因此能夠用void 0 來替換undefined
 
var undefined = 10;
console.log(undefined);//IE8-瀏覽器下爲10,高版本瀏覽器下爲undefined
function test(){
    var undefined = 10;
    console.log(undefined);
}
console.log(test());//全部瀏覽器下都是10
2.客戶端URL
 
這個運算符最經常使用在客戶端URL——javascript:URL中,在URL中能夠寫帶有反作用的表達式,而void則讓瀏覽器沒必要顯示這個表達式的計算結果。例如,常常在HTML代碼中的<a>標籤裏使用void運算符
 
<a href="javascript:void window.open();">打開一個新窗口</a>
3.阻止默認事件 
阻止默認事件的方式是給事件置返回值false
//通常寫法
<a href="http://example.com" onclick="f();return false;">文字</a>
使用void運算符能夠取代上面寫法
<a href="javascript:void(f())">文字</a>
相關文章
相關標籤/搜索