javaScript高級之對象

一.面向對象
什麼是面向對象?
答:面向對象是一種解決問題的思路,一種編程思想。

面向對象與面向過程的區別: 舉個例子,面向過程就是指
			一個人想喫飯,需要進行:出門->買菜->回家->做飯->喫飯(這是面向過程)
			而面向對象可以用:
			叫外賣->外賣員送->喫飯    來表示

面向對象的好處
易維護、易複用、易擴展,由於面向對象有封裝、繼承、多態性的特性,可以設計出低耦合的系統,使系統更加靈活、更加易於維護

面向對象的三大特徵

封裝  繼承  多態

二.對象

對象的概述
對象: 萬事萬物都是對象
JS中的對象:

是鍵值對的集合,   對象是指從現實中抽象出的對象,  我們使用對象模擬現實中的具體聯繫;

對象的創建:
一、基本模式

var person = new Object();
 	person.name = "老張";
 	person.weapon = "刀";
 	person.run = function () { return this.name + "武器是" + person.weapon;
 }

二、工廠模式

function creatPerson(name, weapon) { var person = new Object();
 	 person.name = "老張";
	 person.weapon = "刀";
	 person.run = function () { return this.name + "武器是" + person.weapon;
 } return person;
 }

三、構造函數模式

function creatPerson(name, weapon) { 
this.name = name; 
this.weapon = weapon; 
this.run = function () { 
return this.name + "武器是" + this.weapon;
 }
 } //調用創建對象
 var laozhang=new creatPerson("老張", "刀");

構造函數的使用注意事項

    1.默認函數首字母大寫

    2.構造函數並沒有顯示返回任何東西。new 操作符會自動創建給定的類型並返回他們,當調用構造函數時,new會自動創建this對象,且類型就是構造函數類型。

    3.也可以在構造函數中顯示調用return.如果返回的值是一個對象,它會代替新創建的對象實例返回。如果返回的值是一個原始類型,它會被忽略,新創建的實例會被返回。    
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章