(1)以函数的形式调用时,this指向的对象永远都是window
(2)以方法的形式(调用对象里面的函数)调用时,this指向的就是调用方法的那个对象
<script>
//创建一个全局变量
var name="全局变量";
//创建一个fun()函数
function fun(){
console.log(this.name);
}
//创建一个对象
var obj1={
name:"局部变量1",
sayName:fun//对象属性值为函数fun
}
//再创建一个对象
var obj2={
name:"局部变量2",
sayName:fun
}
fun();//以函数形式调用,this指向的对永远都是window,全局.所以结果是"全局变量"
obj1.sayName();//以方法的形式调用,this指向的对象就是调用方法的那个对象,所以结果是"局部变量1"
obj2.sayName();//同样的道理,结果是"局部变量2"
</script>