首頁  >  文章  >  web前端  >  javascript有沒有函數重載

javascript有沒有函數重載

青灯夜游
青灯夜游原創
2022-02-23 14:58:032414瀏覽

javascript沒有函數重載。同名不同參數的函數之間相互稱為重載,而在javascript中不能實現函數重載,因為如果有相同名稱的函數,後面的會把前面的覆蓋掉。

javascript有沒有函數重載

本教學操作環境:windows7系統、javascript1.8.5版、Dell G3電腦。

javascript沒有函數重載

首先描述重載的定義:同名不同參數的函數之間相互稱之為重載。

也就是在程式中有命名一樣的函數,透過參數的判斷實現相同函數的不同呼叫。

而 javascript 無法實現函數重載,因為命名一樣的函數,後面的會把前面的覆寫掉。

js定義函數是以函數名為標識,根據定義的參數順序和傳入的參數進行匹配,多餘的捨去,不夠的當成undefined處理。

但是js也有自己的方法實作重載,就是方法重載,透過判斷參數的個數,在函數內部實作方法重載。

舉個例子,函數接收一個參數的情況下,返回當前參數,如果兩個就返回兩個參數相加的和,如果是三個就返回三個函數相加的和,以此類推...

function add(){
	if(arguments.length === 1){
		return arguments[0]
	} else {
		var _index = arguments.length;
		var allnum = 0;
		for (var i = 0;i<_index;i++){
			allnum = allnum + arguments[i];
		}
		return allnum
 	}
	return arguments.length
}
add(1,1,2,3,3,3,4);

javascript有沒有函數重載

【相關推薦:javascript學習教學

以上是javascript有沒有函數重載的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn