溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

javascript函數寫法有哪些

發布時間:2021-08-20 11:17:48 來源:億速云 閱讀:154 作者:小新 欄目:web開發

這篇文章將為大家詳細講解有關javascript函數寫法有哪些,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

1.常規寫法

 function fnName(){
  console.log("常規寫法");
}

2.匿名函數,函數保存到變量里

var myfn = function(){
  console.log("匿名函數,函數保存到變量里");
 }

3.如果有多個變量,可以用對象收編變量

3.1 用json對象

 var fnobject1={
   fn1:function(){
      console.log("第一個函數");
   },
   fn2:function(){
      console.log("第二個函數");
   },
   fn3:function(){
      console.log("第三個函數");
   }
 }

3.2 聲明一個對象,然后給它添加方法

 var fnobject2 = function(){};
 fnobject2.fn1 = function(){
   console.log("第一個函數");
 }
 fnobject2.fn2 = function(){
   console.log("第二個函數");
 }
 fnobject2.fn3 = function(){
   console.log("第三個函數");
 }

3.3 可以把方法放在一個對象函數里

 var fnobject3 = function(){
   return {
     fn1:function(){
       console.log("第一個函數");
       },
     fn2:function(){
       console.log("第二個函數");
     },
      fn3:function(){
       console.log("第三個函數");
     }  
   }  
 };

4.可用類來實現,注意類的第二種和第三種寫法不能混用,否則一旦混用,如在后面為對象的原型對象賦值新對象時,那么他將會覆蓋掉之前對prototype對象賦值的方法

4.1 第一種寫法

 var fnobject4 = function(){
   this.fn1 = function(){
     console.log("第一個函數");
  }
   this.fn2 = function(){
     console.log("第二個函數"); 
   }
   this.fn3 = function(){
     console.log("第三個函數");
   }
 };

4.2 第二種寫法

 var fnobject5 = function(){};
 fnobject5.prototype.fn1 = function(){
   console.log("第一個函數");
 }
 fnobject5.prototype.fn2 = function(){
   console.log("第二個函數");
 }
 fnobject5.prototype.fn3 = function(){
   console.log("第三個函數");
 }

4.3 第三種寫法

 var fnobject6 = function(){};
 fnobject6.prototype={
   fn1:function(){
     console.log("第一個函數");
   },
   fn2:function(){
     console.log("第二個函數");
   },
   fn3:function(){
     console.log("第三個函數");
   }
 }

4.4 第四種寫法

var fnobject7 = function(){};
fnobject7.prototype={
  fn1:function(){
    console.log("第一個函數");
    return this;
  },
    fn2:function(){
    console.log("第二個函數");
    return this;
  },
  fn3:function(){
    console.log("第三個函數");
    return this;
  }
}

5.對Function對象類的擴展(下面三種只能用一種)

5.1 第一種寫法(對象)

 Function.prototype.addMethod = function(name,fn){
   this[name] = fn;
 }
 var methods=function(){};//var methods=new Function();
 methods.addMethod('fn1',function(){
   console.log("第一個函數");
 });
 methods.addMethod('fn2',function(){
   console.log("第二個函數");
 });
 methods.addMethod('fn3',function(){
   console.log("第三個函數");
 });

5.2 鏈式添加(對象)

Function.prototype.addMethod = function(name,fn){
  this[name] = fn;
   return this;
 }
 var methods=function(){};//var methods=new Function();
 methods.addMethod('fn1',function(){
   console.log("第一個函數");
 }).addMethod('fn2',function(){
   console.log("第二個函數");
 }).addMethod('fn3',function(){
   console.log("第三個函數");
 });

5.3 鏈式添加(類)

Function.prototype.addMethod = function(name,fn){
  this.prototype[name] = fn;
  return this;
}
var Methods=function(){};//var methods=new Function();
methods.addMethod('fn1',function(){
  console.log("第一個函數");
}).addMethod('fn2',function(){
  console.log("第二個函數");
}).addMethod('fn3',function(){
  console.log("第三個函數");
});

關于“javascript函數寫法有哪些”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女