1.函数
Number()/parseInt()/parseFloat()/alert()/prompt()
函数分为系统函数和自定义函数
函数:是一个功能体,需要提供若干个数据,返回处理的结果 —— 用于封装重复执行的代码
(1)创建函数
function 函数名称(){ 函数体 //封装重复的代码 } |
调用
函数名称()
每调用一次,就会执行一次函数体中的代码。
练习:创建函数getSum,在函数体中封装计算1~100之间所有整数的和并打印结果;调用多次
(2)创建带有参数的函数
function 函数名称(参数列表){ 函数体 } |
调用
函数名称(参数列表)
创建函数时的参数称作形参,调用函数时的参数称作实参,实参会赋值给形参,实参的数量可以和形参的数量不匹配,如果形参未被赋值则为undefined
练习: 创建函数getSum,传递任意一个数字,计算1~任意数字之间所有整数的和并打印结果,调用多次
练习:创建函数getCount,传递任意两个年份,统计两个年份之间所有闰年的个数,调用多次
(3)创建带有返回值的函数
function 函数名称(参数列表){ 函数体 return 值; //返回值,函数调用后返回的结果 } |
调用
函数名称(参数列表) //得到函数的返回值
如果函数中没有写return或者return后没有任何值,则返回undefined
一旦执行return,就会跳出函数的执行
练习:创建函数getMax,传递任意两个数字,返回最大值。
练习:创建函数getMax2,传递任意三个数字,返回最大值
练习:创建函数getStatus,传递订单的状态码,返回对应的中文状态
1-等待付款 2-等待发货 3-运输中 4-已签收 5-已取消 其它-无法追踪
switch-case
对比return和break return用于函数中,跳出函数的执行 break用于循环和switch-case,跳出循环或者switch-case语句 |
练习:创建函数isPrime,传递任意一个数字,判断是否为素数,返回布尔型的值
练习:创建函数isRun,传递任意一个年份,判断是否为闰年,返回布尔型的值
2.变量的作用域
全局变量:在全局作用域(函数以外)声明的变量就是全局变量,可以在任意的作用域下访问到
局部变量:在函数作用域下声明的变量就是局部变量,只能在当前的作用域下访问到
在函数内不加var声明的变量是全局变量,后期在严格模式下报错,不推荐
变量提升:程序执行前,会将var声明的变量提升到所在作用域的最前边,只是提升声明,赋值不提升
3.函数的作用域
全局函数:在全局作用域下创建的函数,可以在任意的作用域访问
局部函数:在函数作用域下创建的函数,只能在当前的作用域访问
函数提升:程序执行前,会将函数整体提升到所在作用域的最前边
斐波那契数列
第1项和第2项固定是1,从第3项开始,每项的值是前两项相加的和
1 1 2 3 5 8