函数基础
什么是函数
函数就是可以重复执行的代码块。
为什么要用函数
因为一部分代码使用次数可能会很多,所以封装起来,需要的时候调用就可以了。
例子:求和;(总是求和)
function fn(a,b){
var sum = a + b;
return sum;
console.log(a+b);
return a+b;
}
var aaa = fn(1,1);
console.log(aaa);
函数的定义
关键字function。
function 函数名 () { 程序 }
参数
参与运算的变量。
为什么要设置参数?为了增强函数的功能性,和程序员的交互性,和函数的可拓展行。所以我们增加了参数这个概念。
形参
形式上参与运算的变量,无实际值,为实参占位置,就像一`个躯壳一样。(可以理解为函数的内部变量外部无法访问)
实参
实际参与运算的变量。形参为他占位置,真实参与运算的变量。
返回值
有return函数就有值;没有return函数就没值;
函数程序运行后的结果外部需要使用的时候,我们不能直接给与,需要通过return返回。
总结:函数内部,return后面的值就是返回值;
作用:函数执行后剩下结果就是返回值。
函数执行完毕,会不会留下点儿什么,取决于有没有返回值
var temp = 函数名() = (功能)+ 该函数的返回值;
注意:
1. 如果函数没有显示的使用 return语句 ,那么函数有默认的返回值:undefined
2. 如果函数使用 return语句,那么跟再return后面的值,就成了函数的返回值
3. 如果函数使用 return语句,但是return后面没有任何值,那么函数的返回值 也是:undefined
4. 函数使用return语句后,这个函数会在执行完 return 语句之后停止并立即退 出,也就是说return后面的所有其他代码都不会再执行。
案例
1、求圆的周长和面积
function getLong(r){
技术点:周长:2*3.14*r
var long = 2*3.14*r;
return long;
}
console.log(getLong(0.5));
console.log(getLong(1));
function getArea(r){
技术点:面积:3.14*r*r
var pi = Math.PI;
var num = Math.pow(r,2);
return pi*num;
return Math.PI*Math.pow(r,2);
}
console.log(getArea(1));
console.log(getArea(10));
2、求2个数中的最大值,求3个数中的最大值
function getMax(a,b){
if(a>b){
return a;
}else{
return b;
}
}
function getMax(a,b){
return a>b?a:b;
}
console.log(getMax(-1,-2));
function getMaxThree(a,b,c){
if(a>b){
//a大,谁大谁和c比
if(a>c){
return a;
}else{
return c;
}
}else{
//b大,谁大谁和c比
if(b>c){
return b;
}else{
return c;
}
}
}
function getMaxThree(a,b,c){
var max = a>b?a:b;
var max2 = c>max?c:max;
return max2;
return c>(a>b?a:b)?c:(a>b?a:b);
}
console.log(getMaxThree(1,2,3));
console.log(getMaxThree(-1,-2,-3));
3、求一组数中的最大值和最小值
function getMaxArr(arr){
var max = arr[0];
for(var i=1;i