什么是函数:
函数是由事件驱动的或者当它被调用时执行的可重复使用的代码块。
函数的作用:
使程序变得更简短而清晰
有利于程序维护
可以提高程序开发的效率
提高了代码的重用性(复用性)
函数的整体语法:
参数 是函数执行任务时所需要的参数, 它可以让函数的适应性更强,更加灵活多变
1.定义函数:
声明函数的关键字 函数名(参数)
function myFun(){
函数体(也就是,需要执行的功能)
}
重要事项:
1. 函数只定义,不调用的话,是不执行 的
2. 函数在哪里调用,就在哪里执行
3. 函数调用的次数,不限
无参无返回值
function myFun(){
alert("我是一个函数");
}
函数调用: 通过函数名直接调用即可, 无论是否有参数,都需要带上小括号
myFun();
函数的四种形态:
有参无返回值
形参: 自定义名称,不需要加var 就可以声明内存空间
function myFunTwo(c,e){ //形式参数列表 , 简称形参
alert(a+b);
}
函数调用
实参: 是向函数内部,传递的数据
var aa = 3;
myFunTwo(4,aa); // 实际参数 ,简称实参
myFunTwo(5,10);
myFunTwo(1,2);
在调用函数的过程中,实参是具体的数据, 形参只是一块空白的内存空间;
实参向形参 传参这个过程, 就是一个值拷贝的过程。 形参负责存储实参拷贝 的值,并在函数中使用
但函数执行结束后,形参这块内存被回收,下次函数再被调用时,重新分配给形参空间;
实参给形参赋值, 是按照实参()中,书写的顺序的来的
//定义一个函数, 可以求出两个数的最大值
function av(c,d){
var e = c > d ? c : d;
alert("最大值是:" + e);
}
// av(10,15);
- 无参有返回值
function sum(){
var s = 0;
for(var i = 1; i < 101; i++){
s += i;
}
return s;
}
var num = sum();
console.log(num); //5050
- 有参有返回值
function KFC(a,b){
return a*b;
}
var c = KFC(1,2);
console.log(c);
函数的返回值:
- 需要写在return关键字后, 可以是一个值,也可以是一个表达式计算出来的值。
- return在一个函数中,理论上可以出现很多个,但是只有一个会执行
- return被触发后,当前函数立刻结束,它下面的代码不再执行。
1.函数在哪里调用, 返回值就去到了哪里
2.有返回值的情况,一定需要新建变量来接受
函数嵌套
不允许嵌套定义, 嵌套的是调用
比较两个 数的大小
function TwoNumber(av,bv){
return av>bv ? av:bv;
}
var sml = TwoNumber(1,2);
比较三个数的大小
function ThreeNumber(a,b,c){
var s = TwoNumber(a,b);
return s > c ? s : c;
}
var cn = ThreeNumber(2,3,5);
形参的命名:
- 在定义函数的小括号中自定义,符合命名规则即可。
- 一旦定义过,在当前函数内,必须按照定义好的名字使用
var max = ThreeNumber(31,411,54);
console.log(max);