四种调用模式:函数模式、方法模式、构造器模式、上下文模式。
函数模式:简单的函数调用,函数名前面咩有任何引导内容
代码:
function foo(){
console.log(this);
};
foo();
输出结果:
方法模式:对象调用自己的方法
var name = "james";
var obj = {
name : "Ariel",
foo : function () {
console.log(this.name);
}
};
obj.foo(); // 输出Ariel
输出结果:
构造器模式:
function Pig() {
console.log(this);
this.sex="123";
}
//定义一个Pig类型的对象p
var p = new Pig();
console.log(p.sex);
输出结果:
上下文模式:
Function foo(){
console.log(this);
}
foo.call(null); this为window
foo.call(undefined); this为window
foo.call(12345); this为Number的实例
foo.call(“aaa”); this为String的实例
foo.call(true); this为Boolean的实例
输出结果: