方法调用模式
当函数被保存为对象的一个属性时,我们称它为一个方法。当一个方法被调用时,this被绑定到该对象。如果调用表达式包含一个提取属性的动作,那么他就是被当做一个方法来调用。
方法可以使用this访问自己所属的对象,所以能对对象取值或修改。This绑定过程发生在调用的时候。通过this可取得他们所属对象的上下文的方法称为公共方法。
函数调用模式
当一个函数并非一个对象的属性时,就是被当做一个函数来调用的。
这种模式调用函数时,this被绑定到全局对象(缺憾——方法不能利用内部函数来帮助它工作)。 解决方案:该方法定义一个that变量并给它赋值为this,内部函数就可以通过that访问到this。
构造器调用模式
JavaScript是基于原型继承的语言。
一个函数,如果创建的目的就是希望结合new前缀来调用,就被称为构造器函数。开头大写
如果在一个函数前面带上new来调用,背地里将会创建一个连接到该函数的prototype成员的新对象,同时将this绑定到该对象上。
Apply调用模式
JavaScript是一门函数式的面向对象编程语言,所以函数可以拥有方法。
Apply方法接受两个参数:绑定给this值,参数数组。
Var array = [3,4];
Var sum = add.apply(null,array);
Var status = Quo
参数
当函数被调用时,会得到一个免费配送的参数,就是arguments数组。函数可以通过此参数访问所有他被调用时传递给它的参数列表。
var sum = function () {
var i,sum = 0;
for (i=0;i