void運算符

void 運算符會執(zhí)行其內容,并總是返回undefined

  • void()函數同理
  • 可用于防止全局變量中的undefined已被重定義為其他內容
    其實undefined、NaNInfinity 都只是全局對象 window 的屬性,可以被賦值。只不過writable設置成了false,所以賦值無效
  • 在函數前加void等于強制讓函數返回值為undefined
  • 立即調用的函數表達式
    在使用立即執(zhí)行的函數表達式時,可以利用 void 運算符讓 JavaScript 引擎把一個function關鍵字識別成函數表達式而不是函數聲明(語句)。
void function iife() {
    var bar = function () {};
    var baz = function () {};
    var foo = function () {
        bar();
        baz();
     };
    var biz = function () {};

    foo();
    biz();
}();
  • JavaScript URIs
    當用戶點擊一個 javascript:格式的URI 時,它會執(zhí)行URI中的代碼,然后用返回的值替換頁面內容,除非返回的值是undefined。
<a href="javascript:void(0);">
  這個鏈接點擊之后不會做任何事情,如果去掉 void(),
  點擊之后整個頁面會被替換成一個字符 0。
</a>
<p> chrome中即使<a href="javascript:0;">也沒變化,firefox中會變成一個字符串0 </p>
<a href="javascript:void(document.body.style.backgroundColor='green');">
  點擊這個鏈接會讓頁面背景變成綠色。
</a>
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容