1.函数简介
函数【function】,函数你可以理解为将某一个常用的功能进行封装。当你想使用这个功能的时候,可以选择调用、执行这个功能即可。
注意:JavaScript脚本语言当中,函数分为两种:一种关键字function定义函数、表达式形式函数 函数使用分为两部分:声明、调用//声明部分functionfun(){....书写代码地方}//调用部分fun();<script type="text/javascript">//声明部分functionfun(){//书写你封装功能性代码console.log("我是一枚大帅哥");console.log("虽然不是真的");}//调用部分fun();fun();fun();//函数在JS当中属于引用类型数据console.log(typeoffun);</script>函数使用分为两部分:声明、调用 函数在JS当中属于Object引用类型数据,不是Function类型的【因为JS语言当中没有这个类型】 函数如果只是声明、但是没有调用。函数体里面代码不会自行的2.形参与实参
在函数声明的时候,声明部分的小括号里面可以书写形参。
在函数调用的时候,调用时候传递数据称之为实参
<script type="text/javascript">//声明一个关键字形式函数functionadd(a,b){console.log(a,b);}//调用函数的时候add("小明","小白");</script>注意:用户调用函数的时候,会将实参按照顺序依次赋值给形参。
实参数量可多于 / 少于形参,JS 不会报错(和 Java 强类型不同)
functiontest(x,y){console.log(x,y);}test(5);// x=5,y=undefined实参多于形参(多余实参存放在 arguments 伪数组)
functiontest(x){console.log(arguments);// [1,2,3] 保存所有传入实参}test(1,2,3);3.变量
变量:在JS当中变量分为两种:局部变量、全局变量
局部变量:在JS当中局部变量,只有两种情况:①作为函数形参 ②变量在函数体中声明
全局变量:除了局部变量以外的都是全局变量
4.return 关键字
4.1 基础作用
终止当前函数:执行到return,函数立刻停止,后面代码不再运行; 返回一个值:把结果交给函数调用处; 函数不写return,默认returnundefined。示例 1:返回计算结果
functionadd(a,b){returna+b;// 返回两数之和}let res=add(3,5);console.log(res);// 8示例 2:return 直接终止函数,后续代码不执行
functiontest(){console.log("执行前");return;// 函数终止console.log("不会执行");}test();4.2 return 无返回值 → undefined
functionfn(){return;}console.log(fn());// undefinedfunctionfn2(){}console.log(fn2());// 不写return也是undefined4.3 return 返回复杂数据(对象、数组)
functiongetUser(){// 返回对象return{name:"李四",age:20};}letuser=getUser();console.log(user.name);// 李四4.4 函数内部提前 return 做拦截(常用校验)
functioncalc(num){// 拦截:非法数字直接返回,不往下计算if(typeofnum!=="number"){return"参数必须是数字";}returnnum*2;}console.log(calc("abc"));// 参数必须是数字console.log(calc(10));// 20