在Javascript中定义并使用类

Javascript也是一种面向对象的语言,在使用js的时候我们可能已经发现了他的面向对象的特征,可是我们怎么定义使用我们自己设计的类呢?这里我把我调查到的予以介绍一下

1.类的定义
  在js中定义类有很多种方式,比如工厂方式、构造函数方式、原型方式、混全的构造函数/原型方式、动态原型方式、混合工厂方式等,这里只介绍动太原形方式。

  例如,我们定义一个“学生”类,字段有学号和姓名,方法有用于显示学生的学号和姓名。

     // 类名
     function  Student(id,name)  {
    
// 字段
         this ._id  =  id;
        
this ._name  =  name;
        

        
if ( typeof  Student._initialized  ==   " undefined " ) {
            
        
// 方法
            Student.prototype.showStudent  =   function () {
                
return    " ( "   +   this ._id  +   " ) "   +   this ._name;
            };
            
            Student._initialized 
=   true ;
        }
    }
    

2.使用自定义的类

     function  btnCreate_onclick() {
    
        
var  stu1  =   new  Student(txtID1.value,txtName1.value);
        
var  stu2  =   new  Student(txtID2.value,txtName2.value);
        alert(
" Student1:  "   +  stu1.showStudent()  +   " \n "   +   " Student2:  "   +  stu2.showStudent());

    }


 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>Define Class in javascript</title> <script type="text/javascript"> function Student(id,name) { this._id = id; this._name = name; if(typeof Student._initialized == "undefined") { Student.prototype.showStudent = function() { return "(" + this._id + ")" + this._name; }; Student._initialized = true; } } function btnCreate_onclick() { var stu1 = new Student(txtID1.value,txtName1.value); var stu2 = new Student(txtID2.value,txtName2.value); alert("Student1: " + stu1.showStudent() + "\n" + "Student2: " + stu2.showStudent()); } </script> </head> <body> <div> ID1: <input id="txtID1" type="text" value="0211045" /><br /> Name1: <input id="txtName1" type="text" value="Sathon" /><br /> ID2: <input id="txtID2" type="text" value="0211048" /><br /> Name2: <input id="txtName2" type="text" value="Leo Wanng" /><br /> <input id="btnCreate" type="button" value="Create" οnclick="return btnCreate_onclick()" /> </div> </body> </html>
提示:可以先在文本框内,根据需要修改代码后再运行

 

 


 

 

3直接定义一个对象s

 // 创建对象

var  myobj  =   function ()
     
//  元素还没创建,未能访问 
      var  a,b,c;
     
//  私有变量 
  
     
//  私有函数 
      var  ss = function (){alert};
  
     
//  公共空间 
      return  { 
         
//  公共的属性,如,要转
          //  公共方法 
         init:  function () { 
             alert(
' 应用程序初
        } 
    }; 
}(); // 程序底部 
  

 

 

转载于:https://www.cnblogs.com/gateluck/archive/2008/03/25/1121945.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值