一、什麼是對象? 對象指一個具體的事物,泛指的不算對象,對像是一組無序的相關屬性和方法的集合;屬性是特征常用名詞來表示,方法是行為常用動詞來表示。 二、為什麼需要對象? 當我們保存一個值時,可以使用變數,保存多個值時,可以使用數組;當我們需要保存很多完整、複雜的信息時,我們就會需要對象。 三、創建對 ...
一、什麼是對象?
對象指一個具體的事物,泛指的不算對象,對像是一組無序的相關屬性和方法的集合;屬性是特征常用名詞來表示,方法是行為常用動詞來表示。二、為什麼需要對象?
當我們保存一個值時,可以使用變數,保存多個值時,可以使用數組;當我們需要保存很多完整、複雜的信息時,我們就會需要對象。三、創建對象的三種方法
1. 利用字面量創建對象
var 對象名 ={屬性名1 : 屬性值1,
屬性名2 : 屬性值2,
屬性名n : 屬性值n,
}
裡面屬性或者方法我們採取鍵值對的形式:鍵就是屬性名 :值就是屬性值;2. 利用 new Object()創建對象
var obj = new Object(); 對象.屬性1=屬性值1;對象.屬性2=屬性值2; 對象.屬性n=屬性值n; 利用對象.屬性=屬性值的方法來添加對象的屬性和方法;每個屬性和方法之間用分號隔開;
3. 利用構造函數創建對象
之前的兩種方式只能一次創建一個對象,我們創建對象裡面有很多屬性是相同的,我們可以利用函數的方法重覆某些相同的代碼,我們就把這個函數稱為構造函數(構造函數就是把我們對象裡面一些相同的屬性和方法抽象出來封裝到函數裡面);裡面封裝的是對象不是普通代碼。
function 構造函數名() { this.屬性1 = 值1; this.屬性2 = 值3; this.屬性n = 值n; this.方法 = function() {} } 我們規範構造函數名首字母大寫是為了和普通函數區分開; 構造函數不需要return就能返回值; 我們調用構造函數必須使用new; 屬性和方法前必須要用this; new構造函數是在記憶體中創建了一個空的對象(我們調用函數,就相當於創建了一個對象,就是構造函數裡面的一個實例,而構造函數泛指大類;),this就會指向剛剛創建的新對象,然後執行構造函數裡面的代碼,給這個空對象添加屬性和方法,最後new可以返回這個對象,所以不用return。
四、如何調用對象裡面的屬性和方法?
1. 調用屬性
①對象名.屬性名 ②對象名['屬性名']2. 調用方法
對象名.方法名()