[理論篇]一.JavaScript中的死連接`javascript:void(0)`和空連接`javascript:;`


void 運算符

void 運算符會對給定的表達式進行求值,然后直接返回 undefined

void 運算符通常只用於獲取 undefined 的原始值,一般使用 void(0)(等同於 void 0)。在上述情況中,也可以使用全局變量undefined 來代替(假定其仍是默認值)。

  1. <script>
  2. console.log(void(console.log("OK")));
  3. </script>

運行結果

  1. OK
  2. undefined

一般我個人稱 javascript:void(0) 死鏈接

javasccript:; 空連接

而javasccript:;是為空鏈接,其實他也也是直接返回的undefined,而前者是計算完畢之后返回undefined

推薦使用javascript:;

個人習慣使用前者,好像感覺后置更快點,我感覺在前端就無所謂了!

可以去看看各個大網站是輸入使用連接的

模擬

當用戶點擊一個以 javascript: URI 時,瀏覽器會對冒號后面的代碼進行求值,然后把求值的結果顯示在頁面上,這時頁面基本上是一大片空白,這通常不是我們想要的。只有當這段代碼的求值結果是 undefined 的時候,瀏覽器才不會去做這件 傻事 ,所以我們經常會用 void 運算符來實現這個需求
看代碼:

  1. <ahref="javascript:void(0);">
  2. 這個鏈接點擊之后不會做任何事情,如果去掉 void(),
  3. 點擊之后整個頁面會被替換成一個字符 0。
  4. </a>
  5. <ahref="javascript:void(document.body.style.backgroundColor='green');">
  6. 點擊這個鏈接會讓頁面背景變成綠色。
  7. </a>

參考資料

番外篇關於<a href="#"></a>

# 包含了一個位置信息 , 默認的錨是 #top , 也就是網頁的上端
如果想完成跟右側等價的寫法,我提供了三種方式進行參考

  1. <ahref="#"onclick="returnfalse;">href</a>
  2. <ahref="javascript:return false;"onclick="調用的js方法">href</a>
  3. <ahref="####">這里是空鏈接,沒有經過測試</a>



 




免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM