1. 概述
在ES6之前,对象不是基于类来创建的,而是一种称为构建函数
的特殊函数来定义对象和它们的特征。
构造函数 是一种特殊的函数,主要用来初始化对象,即为对象成员变量赋初值,它总与new一起使用,我们可以把对象中一些公共属性和方法抽取出来,然后封装到这个函数里面。
在JS中,使用构造函数时要注意以下两点:
1.构造函数用于创建某一类对象,其首字母要大写
2.构造函数要和new一起使用
才有意义
3.执行构造函数里面的代码,给这个新对象添加属性和方法
4.返回这个新对象
2.实例成员和静态成员
2.1实例成员 实例成员就是构造函数内部通过this添加的成员 uname age sing 就是实例成员。 实例成员只能通过实例化的对象来访问
2.2静态成员 在构造函数上本身添加的成员 静态成员只能通过构造函数来访问
3.构造函数原型
构造函数通过原型分配的函数是所有对象所共享的。
JS规定,每一个构造函数都有一个prototype属性,指向另一个对象。
,这个对象的属性和方法,都会被构造函数所拥有。
我们可以把那些不变的方法,直接定义在prototype对象上,这样所有的对象的实例就可以共享这些方法。
对象都会有一个属性 _proto_指向构造函数的prototype属性和方法。
_proto_对象原型和原型对象prototype是等价的