js函数简介
js
代码复用单位是函数,函数可以包含一段可执行代码,也可以接收调用者传入的参数。
js
定义函数的三种方式:
(1)普通函数
function 函数名(参数列表){
//表达式
}
函数名(参数列表); //调用函数
(2)匿名函数
var 变量名 = function (参数列表){
//表达式
}
变量名(参数); //调用函数
(3)使用Function
类构造匿名函数
var 变量名 = new Function (参数列表, 函数执行体);
变量名(参数列表); //调用函数
注:函数的形参不需要做任何类型声明,也不要加var
,这是js
属于弱类型语言的一种体现。函数在执行前会被加载到作用域当中,所以执行函数在函数的声明前后都没有关系,但是使用匿名函数的时候,必须先定义后才能使用,执行匿名函数不能在声明之前。
js
函数的返回值
js
中的函数没有声明返回类型,当函数想要返回值的时候,直接加上return "值"
语句即可,假如不加就代表此函数没有任何返回值。
js
中局部变量和局部函数
根据变量的定义范围不同,变量有全局变量和局部变量之分,直接定义的变量是全局变量,在函数中定义的变量为局部变量,局部变量只能在函数内有效,如果全局变量和局部变量使用相同的变量名时,在函数内部,局部变量会覆盖全局变量。
与局部变量对应的是局部函数,局部函数是在函数中定义的,外部函数可以直接调用其内部的函数,在外部函数外不能调用内部函数,所以只有当外部函数被调用时,内部局部函数才会被执行。
js
调用函数的三种方式:
(1)直接调用函数(最常见、最普通的方式)
//当声明的一个函数没有指明分配给哪个对象使用的时候,默认分配给的是window对象
对象.函数引用;
(2)以call方法调用函数
函数引用.call(调用者, 参数1, 参数2...)
(3)以apply方法调用函数
//arguments相当于是数组,用来存放多个参数,和call调用方法类似
函数引用.apply(调用者, arguments)