首頁 >web前端 >js教程 >詳解JavaScript中常用的函數型別_javascript技巧

詳解JavaScript中常用的函數型別_javascript技巧

WBOY
WBOY原創
2016-05-16 15:31:201502瀏覽

網頁中的java程式碼需要寫在JavaScript中,裡面部分少不了函數,介紹一下JavaScript中常用的函數類型。
1、可變函數

    <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 ,裡面儲存著本次呼叫時傳入的所有實參。

2、匿名函數

<!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> 

3、動態函數
簡介:利用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常用的函數類型,只是簡單的進行了介紹,如果想進行深入了解,大家可以繼續閱讀下面為大家分享的相關文章。

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