1.常規(guī)寫法
function fnName(){ console.log("常規(guī)寫法");}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函數寫法詳解整合,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對VeVb武林網網站的支持!
新聞熱點
疑難解答