1.函数
Number()/parseInt()/parseFloat()/isNaN()/
alert()/prompt()
函数分为系统函数和自定义函数
自定义函数:function也称为方法,是一个功能体,接收若干个数据,返回处理后的结果;使用函数目的是为了封装反复执行的代码
(1)创建普通函数
调用
函数名称()
(2)创建带有参数的函数
函数名称(参数列表)//真正传递的数据
参数说明
调用函数的参数称为实参,创建函数的参数称为形参,实参会赋值给形参,实参的数量可以多于或者少于形参的数量,如果形参未赋值则为undefined
(3)创建带有返回值的函数
函数名称(参数列表)
传递5,计算1~5之间所有整数阶乘的和
1!+2!+3!+4!+5!
步骤1:创建函数,传递任意一个数,计算1到任意数字之间所有整数的乘积(阶乘)
1*2*3*4*5
步骤2:创建函数,传递任意一个数,计算1到任意数字之间所有整数的和
1+2+3+4+5
2.变量的作用域
全局作用域:在函数外使用var声明的变量称为全局变量,可以在任意作用域下访问到
函数作用域:在函数内使用var声明的变量称为局部变量,只能在当前作用域下访问到
变量提升
JS程序执行前存在预加载,将var声明的变量提升到所在作用域的最前边,赋值还是在原来的位置。
3.函数的作用域
全局作用域:在全局下使用function关键字创建的函数,可以在任何作用域下调用
函数作用域:在函数下使用function关键字创建的函数,只能在当前作用域下调用
在预加载的时候,JS会将function关键字创建的函数提升到所在作用域最前边。
4.递归
在函数内部调用自身,本身就是一个死循环
正确使用递归
要有结束的条件
结合着return