js之构造函数

构造函数结构
js之构造函数_第1张图片
构造函数和对象的区别
构造函数,如 Stars(),抽取了对象的公共部分,封装到了函数里面,它泛指某一大类(class);
创建对象,如 new Stars(),特指某一个,通过 new 关键字创建对象的过程我们也称为对象实例化;

new关键字的执行过程
new 在执行时会做四件事情:

  1. 在内存中创建一个新的空对象。
  2. 让 this 指向这个新的对象。
  3. 执行构造函数里面的代码,给这个新对象添加属性和方法。
  4. 返回这个新对象(所以构造函数里面不需要return)。

啥是构造函数的实例成员的静态成员
js之构造函数_第2张图片js之构造函数_第3张图片

构造函数之原型对象(prototype)和对象原型以及constructor属性的关系

原型对象(prototype)
js之构造函数_第4张图片
js之构造函数_第5张图片
对象原型__proto__
js之构造函数_第6张图片
constructor属性
js之构造函数_第7张图片
这三者的微妙关系
js之构造函数_第8张图片

原型链又是什么
js之构造函数_第9张图片
即我们在访问一个对象的属性和方法时,其会在它的对象原型一层一层往上找,最终到null对象为止,这种链式查找的规则就叫原型链
可以理解为:万物皆对象,对象皆为空
观致此处,全凭缘分,如若有错,望请赐教.

你可能感兴趣的:(web之javaScript,javascript,前端,经验分享,面向对象编程)