js-函数-定义:
函数是由事件驱动的或者当它被调用时执行的可重复使用的代码块。
函数的声明方式:
1.声明式创建: function fn(){} // 使用声明关键字function
2.赋值式创建:var fn = function(){} // 作为函数表达式的函数
函数的执行:
1.一般情况: 函数名 + () //任何情况下,只要有此种情况,立即执行
2.事件触发:eg: oBtn.onclick = function;
函数的构成:
实参:实际调用函数的时候传入的参数。
形参:函数定义的时候在小括号里面定义的参数列表。用来接收实际参数。
return:结束函数执行的同时把后面 跟着的值返回出去,作为函数的产出。是可选的。不显示返回参数的话执行后会默认返回undefined。
参数:
1.形参数量等于实参数量: 一一对应的关系;
2.形参数量大于实参: 多出来的形参是undefiend;
3.实参数量大于形参数量: 多出来的实参被传入到argements中;
Tips:实参可以传递任何数据,(null,NaN,undefined也不例外)
函数的分类
1.有名:声明式创建,正常函数,正常使用;
2. 没名:(1)作为值存在(赋值式创建函数);
(2)作为实参存在(回调函数)
(3)作为匿名函数函数体存在(匿名函数)
(4)作为行为处理函数存在(事件处理函数)
匿名函数: 匿名函数就是没有名字的函数,与函数有相同的作用域,但是使用一次就会释放 特点: 立即执行
形如:
(function(){ }()
回调函数:将函数A作为参数传到另一个函数B中,在函数B中执行函数A,那么作为参数的函数A就是回调函数;
arguments:
是函数内部的一个专门用来存储所有实参的数组对象;
数组: 数组的组合,多个数据,顺序(索引),从0-length-1;
函数:(内置和非内置)区别: 有没有返回值;
return(返回值):
在函数执行结束后,得到的数据;函数处理的结果或者数据,可以多次使用;可以返回任何数据类型
return作用:1.将函数内部处理的数据或结果返回到外部进行二次使用
2.立即结束函数
作用域:
生效的区域,可以被使用的区域
1.全局:整个代码空间
2.局部:只要是函数,在函数内部,就是局部作用域;
Tips:全局不能使用局部,局部可以使用全局;若在当前作用域中没有找到要使用的变量,那么会自动向上级作用域找,一直没有,报错
函数的形参,相当于当前所属函数的局部变量(形参中的变量不需要声明)
生命周期:
全局变量:一直存在, 特点 : 方便 缺点 : 消耗性能
局部变量: 只能在局部函数中, 特点 :不消耗性能
so 取中 利用匿名函数