javascript學習筆記四:javascript中的函數(對象)

1.javascript中的函數:在js中函數就是對象(他還提供局部作用域),因爲:
                        函數可以在運行時動態創建,還可以在程序執行過程中創建。
                        函數可以分配給變量,可以將他們的引用複製到其他變量,可以被拓展,大部分函數還可以被刪除。
                        可以作爲參數傳遞給其他函數,還可以由其他函數返回.
                        函數可以有自己的屬性和方法。

2.函數表達式vs函數聲明:函數聲明必須帶有函數名,函數表達式可以不用有函數名,並且函數表達式一般是賦值給變量
                        1).函數聲明只能出現在"程序代碼"中,他僅能在其他函數體內或者是全局空間中。
                        2).函數聲明的定義不能分配給變量或屬性,也不能以參數形式出現在函數調用中。
3.每一個函數都有一個name屬性(只讀),那麼這個屬性只向函數的名稱,如果函數是未命名函數,則一般瀏覽器所返回的函數name屬性的值爲空'',
4.一般而言,我們並不希望用命名函數表達式進行賦值給另一變量如:
                        var foo = function bar(){//.....}
   IE中此函數的name屬性的值沒有被正確地實現,故而不推介這種用法。
5.函數的提升:對於所有的變量,無論是在函數體的何處進行聲明,都會在後臺提升至函數頂部,這對於函數同樣適用。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章