1.javascript中函数是第一型对象,即与其它对象一样,具有:
1.可以通过字面量创建
2.可以赋值给变量或者属性
3.可以作为参数进行传递
4.可以作为函数结果返回
5.拥有属性和方法
2.函数是通过字面量创建的,名称可选
3.页面生命周期内,浏览器可以将函数作为各种类型的事件处理程序进行调用。
4.函数的具有内部作用域,参数也在内部作用域中
5.内部函数可以在当前作用域的任何位置调用(提升机制)
6.函数的形参列表和实际参数列表可以不同,多的参数会被忽略,少的参数被设置为undefined
7.每个函数都会传入两个隐式参数,
1.this作为函数上下文对象引用
2.arguments实际传入参数合集
8.用不同的方法调用函数其上下文不同:
1.普通函数调用,上下文window
2.作为方法调用,上下文为拥有该方法的对象
3.作为构造函数调用,上下文为新分配的对象
4.使用apply和call调用,上下文可任意指定