

首先,我们要知道call的作用,改变this指向,例如Person.call(this) 就是将Person构造函数中的this指向new之后产生的新对象。
然后我们还要理解new()操作之后,构造函数内部的变化:
(1)创建一个新的对象; var obj = { };
(2)将构造函数的作用域付给新的对象 Student.call( obj )
(3)返回新的对象 return obj
不知道这样理解对不对,请给位大神指点,谢谢!
本文详细解析了JavaScript中new操作符的工作原理及call方法的作用,包括如何通过new创建对象、改变this指向以及构造函数内部的变化过程。


首先,我们要知道call的作用,改变this指向,例如Person.call(this) 就是将Person构造函数中的this指向new之后产生的新对象。
然后我们还要理解new()操作之后,构造函数内部的变化:
(1)创建一个新的对象; var obj = { };
(2)将构造函数的作用域付给新的对象 Student.call( obj )
(3)返回新的对象 return obj
不知道这样理解对不对,请给位大神指点,谢谢!
617

被折叠的 条评论
为什么被折叠?