函数
什么是函数
一段预定义好的可以反复执行的代码块
系统函数
js定义好的函数,用户可以直接使用
alert() parseInt() parseFloat() …
有参函数
语法:
function fn(形参集合){ //以,分割
代码块
}
调用时:
fn(实参集合); //以,分割
注意:
形参:在函数内部声明的变量,声明时没有赋值(在调用的时候赋值(实参))
实参:函数调用时传的实际的值,给形参赋值
形参和实参之间 --对应的
参数:赋予函数更灵活的应用,允许函数中有不同的值参与运算
参数怎么提取:找变化的东西 提取为参数
自定义函数
声明式
语法
function 函数名(){
代码块;
//函数体
}
调用:函数名()
注意:函数可以在任意位置调用(在函数定义之前的位置调用) 建议使用声明式定义函数
赋值式
语法:
var fn=function(){
代码块;
}
调用:函数名()
注意:函数必须先定义,在调用 使用较少
函数优势:
可以在任意位置调用
可以反复执行
函数返回值
return
思考:
return 后面如果有多行代码
return 后面的值(表达式) 是不能换行的
如果需要换行 +()
注意:
1,必须要写在函数体内部
2,return后面是什么,函数运行结束后,就是什么
3,函数遇到return会立刻停止
短路
表达式1||表达式2 做函数参数默认值
function fn(a,b){
b=b||2;
}
三目运算符:
表达式1?表达式2:表达式3
表达式1的值 如果为true则表达式2执行,否则表达式3执行
a+b
功能:
封装有功能函数 复用
代码优化
函数实参副本(了解一下)
副本:复制一份 备份
arguments 写在函数体内部
保存了函数调用时传的实参集合
是一个集合(类数组)
集合[下标]
arguments.length 返回 集合的长度
函数体内:函数.length形参长度