函數的基本概述
函數是當它被調用時可重複使用的代碼塊,JS中的函數類似於Java中的方法。
函數有兩種定義方式:命名函數和匿名函數
函數的基本使用
函數的格式:
function 函數名(參數列表) {
函數體;
[return 返回值];
}
代碼實現自定義函數
需求:定義一個函數實現加法功能
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>兩個數相加的函數</title>
</head>
<body>
<script type="text/javascript">
//函數的定義
function add(m,n) {
return m+n;
}
//函數的調用
document.write("兩個數的和:" + add(5,3));
</script>
</body>
</html>
注意的事項:
-
形參的類型:在函數定義的時候不用指定類型,因爲是可變類型
-
函數的返回值:如果一個函數中需要返回值,直接使用return返回,如果沒有返回值,不寫return。
-
關於函數的重載:在JS中沒有函數的重載,同名的函數會覆蓋原來的函數,調用的時候,只會調用最後1個函數,而且實參的個數與形參數的個數沒有關係。
-
所有函數的內部都有一個隱藏數組,名字叫:arguments,用來接收調用時提交的所有的參數。
演示:定義一個函數,在函數的內部輸出arguments的長度和數組中的每個元素。
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>輸出隱藏數組</title>
</head>
<body>
<script type="text/javascript">
function sum (a,b) {
//在函數的內部輸出arguments的長度和數組中的每個元素
document.write("arguments數組的長度:" + arguments.length + "<hr/>");
//輸出每個元素
for (var i = 0; i < arguments.length; i++) {
document.write(arguments[i] + "<br/>");
}
document.write("a=" + a + "<br />");
document.write("b=" + b + "<br />");
}
//調用
sum(3,10,8);
//sum(3);
</script>
</body>
</html>
匿名函數
語法:
var 變量名 = function(參數列表) {
函數體;
}
函數調用:
//匿名函數
var sayHi = function(name) {
window.alert("Hello, " + name);
};
//調用
sayHi("NewBoy");