1. this指向什么
我们先说一个最简单的,this在全局作用域下指向什么?
这个问题非常容易回答,在浏览器中测试就是指向window
所以,在全局作用域下,我们可以认为this就是指向的window
console.log(this); // window
var name = "why";
console.log(this.name); // why
console.log(window.name); // why
但是,开发中很少直接在全局作用域下去使用this,通常都是在函数中使用。
所有的函数在被调用时,都会创建一个执行上下文:
这个上下文中记录着函数的调用栈、函数的调用方式、传入的参数信息等;
this也是其中的一个属性;
2. 默认绑定
什么情况下使用默认绑定呢?独立函数调用。
- 独立的函数调用我们可以理解成函数没有被绑定到某个对象上进行调用;