什么是JavaScript中的函数
在javascript中函数其实是代码复用程序,在数据类型中属于"function"。函数也拥有属性和方法,所以函数也是对象。
函数的创建方法
函数的创建可以通过三种方法实现:函数的声明、函数表达式以及构造函数。
-
函数名称标识符。函数名称是函数声明语句必须的部分。
-
()括号。其中包含0个或者多个以逗号隔开的标识符组成,这些标识符是函数的参数名称,简称形参。
-
{}花括号。其中包含0条或者多条JavaScript语句。这些语句构成了函数体,一旦调用函数,就会执行这些语句。
函数声明
在js中定义个函数,该函数的关键词function在整个语句块的首部,并且存在函数名称标识符的函数代码称为函数声明。
// 函数声明示例
function fun() {
console.log('函数声明')
}
函数表达式
在js中定义一个函数,该函数整体作为变量的赋值语句或者调用执行的语句而存在,该函数语句块称为函数表达式。
// 函数表达式示例
var a = function fun() {
console.log('函数表达式示例1');
}
//这也是函数表达式,函数为匿名函数
var fun = function () {
console.log('函数表达式示例2');
}
// 这还是函数表达式,函数为立即执行函数
(function () {
console.log('函数表达式示例3');
}());
构造函数
通过new关键字来调用的函数称为构造函数。
var a = new Function('x', 'y', 'return x+y;');
这行代码创建的一个新函数与通过下面代码定义的函数几乎等价:
var a = function (x, y) {
return x + y;
}
函数和变量的优先级
函数的提升优先级大于变量提升的优先级
如果外层拥有和函数同名的变量且赋值的情况下会产生遮蔽效果。
变量不赋值时:
赋值时: