this绑定规则-new绑定

39 阅读1分钟

JavaScript中的函数可以当做一个类的构造函数来使用,也就是使用new关键字。

使用new关键字来调用函数时,会执行如下的操作:

1.创建一个全新的对象; 2.这个新对象会被执行prototype连接; 3.这个新对象会绑定到函数调用的this上(this的绑定在这个步骤完成); 4.如果函数没有返回其他对象,表达式会返回这个新对象

function Person(name, age) {
    this.name = name
    this.age = age
}

var p1 = new Person("why", 18)
console.log(p1.name, p1.age)  // 输出:why 18

var p2 = new Person("kobe", 30)

我们通过一个new关键字调用一个函数时(构造器),这个时候this是在调用这个构造器时创建出来的对象

this=创建出来的对象

这个绑定过程就是new绑定