下面简要总结JavaScript中关于函数的相关内容:
1.函数
函数即函数对象。一般有return语句,若无,默认返回undefined。
2.函数创建方式:函数声明和函数表达式。函数声明会被前置,无论在脚本哪个位置,都会提前处理,任何位置处调用都可。而函数表达式则相反,能否成功调用与其所在位置有关。
(1)函数声明:
function foo(){
return "Hello";
}
console.log(foo());
以上为函数声明方式,调用方式为直接调用foo();
(2)函数表达式:
*1. 函数表达式
var sqrts=function(){
return Math.sqrt(4);
}
console.log(sqrts());
var add=function(a,b){
return a+b;
}
var sum=add(1,2);
console.log(sum);
*2. 匿名函数表达式(立即执行表达式);
console.log((function(){
return Math.E;
})());
console.log(+function(){
return Math.E;
}());
注意立即执行表达式的特殊符号()、!、~、+、-,但不一定这些符号都可以,经验证,最好使用括号。
*3. return function:
function outer(){
var localVal=30;
return function(){
return localVal;
}
}
var func=outer();
console.log(func());
*4. 命名函数表达式(不常见)
var add=function foo(){
return ("Welcome!");
}
console.log(add());
(3)函数构造器:
var func=new Function('a','b','console.log(a+b);');
func(1,2);
var fun=new Function('a','b','c','console.log(a*b*c);');
fun(1,2,3);