js 函数定义的方式
js 函数定义的方式
一、总结
一句话总结:
最常见就下面三种
最常见:function func1([参数]){/*函数体*/}
将匿名函数赋值给变量:var func2=function([参数]){/*函数体*/};
json方式:change: function () { $('body').css({'backgroundColor': 'red'}); },
1、function func1([参数]){/*函数体*/}和var func2=function([参数]){/*函数体*/} 定义的函数的区别?
function func1([参数]){/*函数体*/}定义的函数在函数前可以调用
主要区别在于调用的时机:
函数式声明调用方式:2种
// 在函数前面,仍然可以调用
mode();
/**
* 函数式声明
*/
function mode() {
console.log("运行mode函数");
}
// 在函数后面,当然可以调用
mode();
函数表达式定义函数:1种
// 报错:在调用mode2()之前,没有定义
mode2();
/**
* 以函数表达式的形式定义函数
*/
var mode2 = function() {
console.log("运行mode2函数");
}
// 只能放在该函数的后面,才能调用
mode2();
二、js 函数定义的2种方式
转自或参考:js 函数定义的2种方式
https://www.cnblogs.com/Marydon20170307/p/8671616.html
方式一:
/** * 函数式声明 */ function mode() { console.log("运行mode函数"); }
方式二:
/** * 以函数表达式的形式定义函数 */ var mode2 = function() { console.log("运行mode2函数"); }
主要区别在于调用的时机:
函数式声明调用方式:2种
// 在函数前面,仍然可以调用 mode(); /** * 函数式声明 */ function mode() { console.log("运行mode函数"); } // 在函数后面,当然可以调用 mode();
函数表达式定义函数:1种
// 报错:在调用mode2()之前,没有定义 mode2(); /** * 以函数表达式的形式定义函数 */ var mode2 = function() { console.log("运行mode2函数"); } // 只能放在该函数的后面,才能调用 mode2();
三、js函数几种常用的定义方式
function func1([参数]){/*函数体*/}
var func2=function([参数]){/*函数体*/};
var func3=function func4([参数]){/*函数体*/};
var func5=new Function();
上述第一种方式是最常用的方式,不用多说。
第二种是将一匿名函数赋给一个变量,调用方法:func2([函数]);
第三种是将func4赋给变量func3,调用方法:func3([函数]);或func4([函数]);
第四种是声明func5为一个对象。