Appearance
函数
一个处理事情的方法,目的是把实现一个功能的代码进行封装,以后再想实现
这个功能,只需要执行方法即可。 => 低耦合、高内聚、减少页面中的冗余代码,提高代码的重复利用率
函数两部分:定义函数、执行函数
形参:函数实现功能需要的原材料不确定,需要用户执行时传给我才知道
实参:执行函数时传递的具体值
创建一个函数
- 1.创建值 开辟一个堆内存 把函数体中的代码当作字符串存储在堆内存中 把堆内存地址放到栈中
- 2.创建变量
- 3.让变量和值关联起来
arguments
类数组集合(和元素集合类似),根据索引记录了每一个传递进来的实参信息,和是否有定义对 应的形参变量没有关系 arguments.length属性代表了函数调用时传递的实参个数
fn.length
代表了函数定义时的形参个数
return
外面想用当前上下文中的一些私有信息,则需要函数提供对应的出口,这个出口在js中称为返回值,return后面的一定是值 如果函数中没有写return。默认返回值是undefined return除了返回信息外,还有告知函数体中下面代码不再执行的作用
匿名函数
把一个函数当作一个值赋值给变量或事件绑定
自执行函数
函数创建完就立即执行 (function (n) {})(100) (function foo () {})()
箭头函数
1.没有arguments,可以用rest参数代替 2.没有自己this,this是上级上下文中的this 3.没有prototype属性,不能被new执行