在Javascript定義對象

來源:互聯網
上載者:User
在Javascript定義對象

var xiaoxing = {          grade:1,   name : "xiaoxing",   age:27,   sex:"男",         speak:function(words)   {      alert(this.name+"說:"+words+"!");   },   improve:function()   {       this.grade++;   }}


這樣,我就變成了一個對象了,你可以讓我跟你說一句話


xiaoxing.speak("歡迎來到cnblogs的supersun的天空");while(i have friends){   xiaoxing.improve();}


還不夠物件導向,最好的做法是用一個函數來定義對象,在用他的prototype原型對象的方式來定義其屬性,事件等,方便繼承擴充。


<script language="javascript" type="text/javascript">//建立原型對象,定義屬性、方法、及對象事件等。 Student.prototype={     _name:null,     _age:null,     _sex:null,     ShowName:function()    {         alert("Name:"+ this._name +"/n" + "Age:" + this._age + "/n" + "Sex:"+ this._sex);     } } //專門用一個函數來初始化對象。 function Student(name,age,sex){     this._name=name;     this._age=age;     this._sex=sex; } var student=new Student("Young",25,"男"); //執行個體化 student.ShowName(); //調用對象方法</script>

<script language="javascript" type="text/javascript"> //建立原型對象,定義屬性、方法、及對象事件等。 Student.prototype= { _name:null, _age:null, _sex:null, ShowName:function() { alert("Name:"+ this._name +"/n" + "Age:" + this._age + "/n" + "Sex:"+ this._sex); } } //專門用一個函數來初始化對象。 function Student(name,age,sex) { this._name=name; this._age=age; this._sex=sex; } var student=new Student("Young",25,"男"); //執行個體化 student.ShowName(); //調用對象方法 </script>



<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <HTML> <HEAD> <TITLE> New Document </TITLE> <META NAME="Generator" CONTENT="EditPlus"> <META NAME="Author" CONTENT=""> <META NAME="Keywords" CONTENT=""> <META NAME="Description" CONTENT=""> </HEAD> <BODY> <script language="javascript" type="text/javascript">function Student(name,age,sex) {     this._name=name;     this._age=age;     this._sex=sex;     this.ShowName=function()     {         alert("Name:"+ this._name +"/n" + "Age:" + this._age + "/n" + "Sex:"+ this._sex);     }; } var student=new Student("Young",25,"男"); //執行個體化 student.ShowName(); //調用對象方法</script> </BODY> </HTML>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <HTML> <HEAD> <TITLE> New Document </TITLE> <META NAME="Generator" CONTENT="EditPlus"> <META NAME="Author" CONTENT=""> <META NAME="Keywords" CONTENT=""> <META NAME="Description" CONTENT=""> </HEAD> <BODY> <script language="javascript" type="text/javascript"> function Student(name,age,sex) { this._name=name; this._age=age; this._sex=sex; this.ShowName=function() { alert("Name:"+ this._name +"/n" + "Age:" + this._age + "/n" + "Sex:"+ this._sex); }; } var student=new Student("Young",25,"男"); //執行個體化 student.ShowName(); //調用對象方法 </script> </BODY> </HTML>



<script type="text/javascript">var person = new Function();//或var person = function(){}都可以 person.prototype={     grade:0,     age:0,     sex:null,     name:null,     speak:function(words)     {         alert(this.name+"說:"+words+"!");     },     init:function(_grade,_age,_sex,_name)     {         this.grade = _grade;this.age=_age;this.sex=_sex;this.name=_name;     } } var xiaoxing = new person(); xiaoxing.init("10","27","男","xiaoxing"); xiaoxing.speak("hello everybody");</script>

<script type="text/javascript"> var person = new Function();//或var person = function(){}都可以 person.prototype={ grade:0, age:0, sex:null, name:null, speak:function(words) { alert(this.name+"說:"+words+"!"); }, init:function(_grade,_age,_sex,_name) { this.grade = _grade;this.age=_age;this.sex=_sex;this.name=_name; } } var xiaoxing = new person(); xiaoxing.init("10","27","男","xiaoxing"); xiaoxing.speak("hello everybody"); </script>

這裡採用init來初始化定義了一個對象,當然我們還可以在function(){}這樣寫


var person = function(_grade,_age,_sex,_name){this.grade = _grade;this.age=_age;this.sex=_sex;this.name=_name;}


這樣我們就可以寫成如下代碼


var xiaoxing = new person("10","27","男","xiaoxing"); xiaoxing.speak("hello everybody");

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.