Javascript的函數類型:1、建構函數,使用new關鍵字定義呼叫的函數,預設回傳時一個新物件;2、匿名函數,沒有實際名字的函數,不會造成全域變數的污染;3、閉包函數,具有存取另一個函數作用域中變數權限的函數;4、動態函數,參數清單和函數體是透過字串動態指定的函數。
本教學操作環境:windows10系統、javascript1.8.5版、Dell G3電腦。
1.建構子
Javascript中建構函式是指使用new關鍵字定義呼叫的函數,其預設回傳的是一個新對象,
2.匿名函數
Javascript中匿名函數是指沒有實際名字的函數,使用匿名函數不會造成全域變數的污染。
3.閉包函數
Javascript中閉包函數是指具有存取另一個函數作用域中變數權限的函數,閉包函數常用於在函數的內部建立。
4.動態函數
Javascript中動態函數是指其參數清單、函數體是透過字串動態指定的函數。
範例如下:
<script> function show(){ alert("第一个。。。"); } function show(str){ alert("第二个"); } function show(a,b){ alert("第三个。。。"); alert(a+":"+b); } </script> </head> <!-- 可变参数的函数: 在js中都是可变参数的函数 <!-- 1 函数虽然定义时是声明成两个参数,但调用时却是可以传入任意个 --> <!-- 2 每个函数中,存在一个 默认的数组arguments ,里面存储着本次调用时传入的所有实参 --> <body> <!-- 1, 可变参数的演示: --> <script> show();//当调用之后,会把前面的冲掉 //undefined:undefined show(111);//当调用之后,会把前面的冲掉 // 11:undefined show("a","b");//当调用之后,会把前面的冲掉//a:b show(1,2,3,4);//1:2 </script>
綜上的例子,Js當中的函數是不存在重載的。一定就通配所有的了,函數雖然定義時是宣告若干變量,但呼叫時卻是可以傳入任意個。每個函數中,存在一個 預設的陣列arguments ,裡面儲存著本次呼叫時傳入的所有實參。
匿名函數
<!DOCTYPE html> <html> <head> </head> <body> <!-- 演示JavaScript匿名函数 --> <script type="text/javascript"> var res =function(a,b){//注意是小写func return a+b; };</span> alert("sum="+res(1,2));//sum=3 alert("res="+res("abc","def"));//res=abcdef </script> </body> </html>
動態函數
#簡介:利用Js當中內建的物件Function來建構一個函數,建構方法中的第1個參數是“形參”,第2個參數是“函數體”。
<span style="font-size:18px;"><!DOCTYPE html> <html> <head> <title>DTfunc.html</title> <meta http-equiv="keywords" content="keyword1,keyword2,keyword3"> <meta http-equiv="description" content="this is my page"> <meta http-equiv="content-type" content="text/html; charset=UTF-8"> <!--<link rel="stylesheet" type="text/css" href="./styles.css">--> </head> <body> <!-- 利用Js当中内置的对象Function来构造一个函数,构造方法中的第1个参数是“形参”,第2个参数是“函数体”。 --> <!-- 该思想类似于Java当中的类反射。我们平时写函数时通常不用,但关键的地方一写,整个程序的功能会变得很活 --> <script> var res=new Function("x,y","var sum=0;sum=x+y;return sum;") var sum=res(12,34);//46 var sum=res("abc","bss");//abcbss alert("sum="+sum); </script> </body> </html></span>
【相關推薦:javascript影片教學、web前端】
以上是Javascript的函數型別有哪些的詳細內容。更多資訊請關注PHP中文網其他相關文章!