JS中創建函數的方法



1、命名函數

function abc(){ // abc是函數名
console.log("a");
}
var fn=abc;    //把函數abc地址賦值傳給fn
fn();    // 或者 abc(); => 執行函數

 

命名函數的特點:

1.有函數名,可以通過函數調用函數
2.聲明提前,當執行到script 標簽時,會預先將所有的命名函數存在堆中,並在棧中定義函數名引用該函數地址

2、匿名函數

 1 //變量匿名函數
 2 var fn=function(){
 3 
 4 }
 5 
 6 //對象方法定義
 7 var obj={
 8 fn:function(){
 9 
10 }
11 }
12 
13 // 自執行函數 缺點:只能執行一次,無法再次調用,會造成內存泄漏
14 (function(){
15 
16 })();

 

匿名函數特點
1.匿名函數沒有名字
2.可以設置給一個變量,或者設置給一個對象的屬性
3.命名函數可以在函數定義之前(同一個script內)和之后(script標簽可以相同,可以不同)執行,但是匿名函數只能在函數定義后執行(不會聲明提前)
4.自執行函數,只能執行一次,無法再次調用,會造成內存泄漏


 3、構造函數定義

1 //構造函數
2 var fn=new Function("參數1","參數2",..."函數內容")

 

構造函數特點
1.構造函數中,前面的內容就是這個創建函數的所有參數,最后一個內容就是這個函數執行語句塊
2.要求所有內容都必須是字符串
3.缺點:構造函數創建函數缺點是運行速度慢,效率低,因為需要將所有的字符串轉換為代碼

 

逆戰203


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM