JavaScript中的函數是數據

JavaScript 中的函數實際上是數據。這也就是說下面的2 種定義函數的方式是完全一樣的。
  1. function f(){return 1;}
  2. var f = function(){retrun 1;}
第二種定義函數的方式也被稱爲“文本標記型”函數
 
兩種定義函數的區別:
  第二種定義函數的缺點,有位置的限制,而第一種沒有,我們看一下下面的例子

 

<script type="text/javascript">        

    //這也就是說下面的2 種定義函數的方式是完全一樣的。        

    function fun01() { }        

    var fun02 = function () { }

        //結果是function,說明fun02就是一個函數        

    document.write(typeof fun02 + '<br/>');

        //並且它可以當作一個變量來使用        

    var temp = fun02;        

    document.write(typeof temp + '<br/>');

        //第二種定義函數的缺點,有位置的限制

        document.write(obj01() + '<br/>');        

   //obj02不能在這個位置調用        

   //document.write(obj02() + '<br/>');

        function obj01() {  return 2;  }

        var obj02 = function () { return 3; }

        //只能在函數定義的後面調用        

    document.write(obj02() + '<br/>');    

</script>

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