文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>js面向对象的基础(一)...

js面向对象的基础(一)...

时间:2010-08-18  来源:Kenneth_Hao

     JavaScript中定义一个类,也就是一个函数.

 function class1(){ //类成员定义以及构造函数 this.name = 'kenneth'; //公共成员属性 this.age = 20; //公共成员属性 var secret = 'secret'; //私有成员属性 function showSecret(){ //私有方法属性 alert(secret); } this.method1 = function(){ //公有成员访问私有属性,调用私有方法 secret = 'secret2.0'; showSecret(); } } var classInstance = new class1(); classInstance.method1(); //调用公有方法 alert(classInstance.name); //显示公有属性 classInstance = null ; //释放内存

      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......

相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载