js原型prototype原型链__proto__以及必会的new关键字和构造函数

什么是构造函数

构造函数是典型的面向对象编程语言,js的对象语言体系,是基于构造函数和原型链的
构造函数是生成对象实例的模板

构造函数和普通函数有什么区别?

1. this指向:{
    ① 构造函数中的this,指向的是其创建出来的实例;
    ② 而普通函数的this指向则是window,严格模式下指向的为undefined;
}
2. 构造函数使用new关键字,而普通函数没有

new关键字进场啦~

new关键字的使用,也是构造函数和普通函数的区别之一。

new关键字都做了什么

① 创建一个空对象
② 继承该函数的相关属性
③ 绑定this

解释new和prototype的关系

new 关键字会创造出一个空对象,而它可以去继承该函数的相关属性,这个空对象,
相当于一个空间,装的东西多了,就会导致内存不足,
那么这种情况,我们就有了prototype,就相当于我们创建了一个共享空间,
只有我们有的东西,都可以在这个共享空间找并且找到,
如果没有就会通过__proto__链式查找,一直找下去,制导找不到为止

作者:October_CanYang
链接:https://juejin.cn/post/7124941156261036046
来源:稀土掘金
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容