js中的new做了什么?

创建js 对象的一种方式就是new ,那么new 究竟做了什么呢?


 
function Person () {
    this.name = name;
    this.age = age;
    this.sex = sex
 
    this.sayName = function () {
        return this.name;
    };
}
var person = new Person("bianbumei", 40-1, "famle");
 
console.log(person.name);

使用关键字new创建新实例对象经过了以下几步:

  1. 创建一个新对象
  2. 将新对象的proto指向构造函数的prototype对象
  3. 将构造函数的作用域赋值给新对象 (也就是this指向新对象)
  4. 执行构造函数中的代码(为这个新对象添加属性)
  5. 返回新的对象
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容