JS学习笔记(函数)
函数
函数:
函数也是一个对象
函数中可以封装一些功能(代码),在需要的时候可以执行这些功能(代码)
函数中可以保存一些代码在需要的时候调用
使用typeof检查一个函数对象时,会返回function
封装到函数中的代码不会立即执行
函数中的代码会在函数调用的时候执行
调用函数 语法:函数对象()
当调用函数时,函数中封装的代码会立即按顺序执行
函数创建:
1)构造函数方式来创建一个函数对象
语法:var 函数名 = new Function(形参1,形参2...形参N){代码块}
2)使用函数声明来创建一个函数
语法:function 函数名(形参1,形参2...形参N){
代码块...
}
3)使用函数表达式来创建一个函数
语法:var 函数名 = function(形参1,形参2...形参N){
代码块...
}
函数表达式的方法创建函数,实际上是将匿名函数赋值给变量,再通过变量调用函数。
匿名函数:function(){
代码块...
}
注:函数中的形参是可有可无的,根据实际需要创建!
函数的参数
可以在函数的( )中来指定一个或多个形参(形式参数)
多个形参之间用逗号隔开,声明形参就相当于在函数内部声明了对应的变量但并未赋值。
在调用函数时,可以在( )中来指定实参(实际参数)
实参将会赋值给函数中对应的形参
在调用函数时解析器不会检查实参的类型,
所以要注意,是否有可能会接收到非法的参数,如果有可能则需要对参数进行类型检查
函数的实参可以是任意类型
调用函数时解析器也不会检查实参的数量
多余实参不会被赋值
如果实参数量少于形参的数量,则没有对应实参的形参将是undefined
函数的返回值
可以使用return来设置函数的返回值
语法:return 值
return后的值将会会作为函数的执行结果返回,
可以定义一个变量来接收该结果
在函数中,return后的语句都不会被执行
如果return语句后不跟任何值就相当于返回一个undefined,如果函数中不写return,则也会返回undefined。
return后边可以跟任何类型的值
立即执行函数
立即执行函数
函数定义完,立即被调用,这种函数叫做立即执行函数
立即执行函数往往只会使用一次
方法
函数也可以称为对象的属性:
如果一个函数作为一个对象的属性保存,
那么我们称这个函数是这个对象的方法
调用函数就说调用对象的方法(method)
但是要注意,它只是名称上的区别,没有其它区别
枚举对象中的属性
使用for...in语句
语法:
for(var 变量 in 对象){
}
for...in语句 对象中有几个属性,循环体就执行几次
每次执行时,会将对象中的一个属性名字赋值给变量