function
- 函数类型的作用:
- 1.具有封装性(防止冲突和覆盖)
- 2.减少冗余代码,把实现相同功能的代码都写在一个函数里,等下次需要实现这个功能时,只需要执行这个函数即可
复制代码
- 函数的定义:function 函数名(){函数体的内容(实现一个函数具体的逻辑)
- 函数定义的步骤:
- 1.开辟一个堆内存,假设引用地址FFF000
- 2.将函数体的内容以字符串形式存在堆内存里面
- 3.将引用地址FFF000赋值给函数名fn,函数名fn就代表了整个函数体 可以打印出来瞧瞧
- 函数的执行:函数名()
- 函数的执行步骤: - 1.开辟一个封闭的内存空间(私有作用域) - 2.将函数体内的字符串转换成JS代码,代码从上往下执行
- 函数执行时,每次开辟的内存空间相互之间没有任何关系
- 函数的参数:通过传参实现功能的差异化
function sum(a, b){
var total = null;
total = Math.sqrt(Math.pow(a,2) + Math.pow(b,2));
return total; //返回值 遇到return,函数终止运行
}
复制代码
/*函数外面无法拿到函数内部的值
通过return将函数内部的值暴露给外界,函数运行完后会自动的运行返回值*/
var total = sum(7, 8); //1.函数运行 2.携带返回值
console.log(total); //若没写return/写return没写值,运行后返回值为undefined
复制代码
- 形参适合参数个数确定的情况 - 若实参个数不确定,就不能用形参来接受实参,而是用arguments来接受实参
- arguments不是一个数组对象,arguments 实参个数,arguments[0]第一个实参,arguments[arguments.length - 1]最后一个实参
匿名函数
因为()有粘性,()之前需要加分隔符; ~ !
!function () {
}() //匿名函数的执行,闭包的一种
复制代码
- 匿名方法执行事件时是点击时执行的
a.onclick = function () { //匿名方法的执行是用户点击时执行的,不需要手动执行
alert('a');
}
复制代码