函数的概念
函数就是代码块,可以多次调用,很容易实现模块化编程。
函数的好处
1)减少代码开发时间
2) 模块化编程
3) 可以重复使用
函数的定义
形式1 function fn(){
// 函数体内功能代码
}
function---为声明函数的关键字,指出这是一个函数
fn ------是函数的名称,类似于永来存储函数的变量
() ------为函数的参数,多个参数用 , 隔开
{} ------放置函数体,用于执行时,所要编译的代码段
函数调用
函数名();
fn() ;
直接写函数名 加上 小括号“()”
函数的参数
function fn(参数1,参数2,....,参数N){
// 函数体内功能代码
}
函数的两种创建方式:声明式和赋值式
通过关键字function声明:
function fn(){ }
通过变量赋值(匿名函数):
var fn = function(){};
这种方式下,虽然这个函数没有名字,但是这个函数赋值给了fn,因此通过变量fn也能调用到这个函数
以上两种声明方式等价
函数的返回值(return)
return是无条件退出当前方法/函数,并且返回数据(注:如果没有数据返回undefined)
不仅可以返回值,还可以终止程序的执行
作用域
作用域:变量起作用的区域
全局作用域 :在script标签内,函数外的区域就是全局作用域,在全局作用内声明的变量叫做全局变量 。全局变量可以在任意地方访问。
函数作用域 :在 函数内的区域 叫做函数作用域,在函数作用域内声明的变量叫做局部变量 ,局部变量只有在当前函数内才能访问到。
变量生命周期
1.永远存在----全局变量 程序没关,一直占用内存,少用全局
2.朝生暮死----局部变量 函数的大括号开头到函数的大括号结尾,可以少占用内存
递归函数
所谓的递归函数就是在函数体内调用本函数。使用递归函数一定要注意,处理不当就会进入死循环。
递归函数一定要有终止条件,否则便是死循环