函数就是封装了一段可以被重复执行调用的代码块。
目的:让大量代码重复使用。
函数在使用时分为两步:1.声明函数
function 函数名(){
//函数体
}
2.调用函数(函数不调用不执行)
函数名();
我们可利用函数的参数实现函数重复不同的代码:
function 函数名(形参1,形参2···) {
//函数体
}
函数名(实参1,实参2···);
函数形参和实参的匹配问题:1.形参个数=实参个数,正常输出。
2.形参个数<实参个数,取到形参个数。
3.形参个数>实参个数,多余的形参个数取undefined,最终结果为NaN。
arguments的使用
当我们不确定有多少个参数传递时,可以用arguments来获取。在JS中,arguments实际上是当前函数的一个内置对象。所有函数都内置一个arguments对象,arguments对象中存储了传递的所有实参。
在调用函数时,浏览器每次都会传递进两个隐含的参数
1.函数的上下文对象this
2.封装实参的对象arguments
arguments是一个类数组对象,它也可以通过索引来操作数据,也可以获取长度
在调用函数时,我们所传递的实参都会在arguments中保存
arguments.length可以用来获取实参的长度
我们即使不定义形参,也可以通过arguments来使用实参
只不过比较麻烦
arguments[0]表示第一个实参
arguments[1]表示第二个实参
function fun(){
console.log(arguments instanceof Array);//false
}
fun();
arguments展示形式是一个伪数组,因此可进行遍历。
伪数组具有以下特点:1.具有length属性。2.按索引方式储存数据
3.不具有数组的push、pop等方法。
函数有两种声明方式:
1.利用函数关键字定义函数(命名函数)
2.函数表达式(匿名函数)
1.命名函数
function 函数名() {
//函数体
}
函数名();
2.匿名函数
var 变量名=function(){
//函数体
}
变量名();