void in JavaScript

1.void in JavaScript

思考:我們經常會使用到 javascript:void(0) 這樣的代碼,那麼在 JavaScript 中 javascript:void(0) 代表的是什麼意思呢?

javascript:void(0) 中最關鍵的是 void 關鍵字, void 是 JavaScript 中非常重要的關鍵字,該操作符指定要計算一個表達式但是不返回值。

下面的代碼創建了一個超鏈接,當用戶點擊以後頁面不會出現任何效果。

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>void</title>
	</head>
	<body>
		<a href="javascript:void(0)">點擊此處什麼也不發生因爲void不返回值</a>
	</body>
</html>

當用戶點擊時,void(0) 計算爲 0,但 Javascript 上沒有任何效果。因爲void不返回值。

再看下面的代碼,在用戶點擊鏈接後顯示彈出信息:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>void</title>
	</head>
	<body>
		<a href="javascript:void(alert('Bounce!!!'))">點擊此處彈出窗口</a>
	</body>
</html>

此時會依照代碼彈出 Bounce!!!提示框。

在這裏插入圖片描述

由此可見,void()僅僅是代表不返回任何值,但是括號內的表達式還是要運行,如上述 void(alert('Bounce!!!'))


2.href="#"href="javascript:void(0)"的區別

# 包含了一個位置信息,默認的錨是 #top ,也就是網頁的上端。而 javascript:void(0) 僅僅表示一個死鏈接。
在頁面很長的時候會使用 # 來定位頁面的具體位置,格式爲:# + id。

例如:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>void</title>
	</head>
	<body>
		<a href="javascript:void(0)">點我沒有反應哦!</a>
		<br />
		<!-- 跳轉到指定id = pos元素的地方 -->
		<a href="#pos">點我到指定id具體位置哦!</a> 
		<br />
		<br />
		 ...(省略許多換行,因爲最後需要能有頁面下拉跳轉的效果)
		<br />
		<br />
		<p id="pos" style="color: red;">這是指定的id=pos 的位置</p>
	</body>
</html>

實現效果如下:

void

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章