JavaScript中定义一个类,也就是一个函数.
JavaScript 提供了一些内置对象,如表示日期的Date类。可以通过 new Date(); 来获得一个实例。同样,对于class1,也可以new一个实例,var classInstance = new class1(); ,通过此实例操作对象的属性和方法。
在实际运用中,可以加入参数传递进行类的构造。如 var studentA = new Person("student","光明小学");
分析一下new创建对象的过程,这里要了解到this指针的概念。面向对象中的一个重要概念,它表示当前运行的对象,在实现对象操作时,this指针可以获得该对象自身的引用。
(1)当解释器遇到new操作符时,创建一个空对象。
(2)开始运行class1这个函数,并将其中(函数,类构造器)的this指针都指向这个新建的对象。
(3)解释器为对象创建属性和方法,如上述实例的属性name,age,以及方法method1().
(4)当这个初始化过程结束后,即完成了构造函数的作用,new操作符返回初始化后的对象。
However , 以这样的方式创建对象,每次都要重复创建属性和方法,造成了内存的浪费,还有一种定义类的机制,prototype对象,可以解决定义类成员带来的缺点。To be continue......