js高階 建立物件的方式

2021-08-14 00:15:50 字數 2155 閱讀 5657

1、物件字面量(其實就是鍵值對)  

(1)只能建立一次物件,復用性較差,如果要建立多個物件,**冗餘度太高

var obj =

2、使用內建建構函式:我們可以先建立乙個物件出來,然後手動的新增成員(屬性、方法)

(1)**也是比較冗餘

varobj =

newobject();

obj.

name

="哈哈哈哈哈";

obj.

singer

="啦啦啦啦啦";

obj.

sing

=function();

3、封裝簡單的工廠函式(不推薦使用了)

function

createsong

(songname

,singername);

return

obj;

//物件需要返回

}var

obj =

createsong

("演員"

,"薛之謙");

varobj1 =

createsong

("餓狼傳說"

,"張學友");

4、自定義建構函式

//什麼是建構函式?

//建構函式其實也是函式,通常用來初始化物件

//並且和new關鍵字同時出現

//new是用來建立物件的

//建構函式是用來初始化物件的(給物件新增成員《屬性、方法》)

//建構函式名的首字母必須要大寫

function

person()

}var

p =new

person();

console

.log

(p);

p.sayhello();

//建構函式的執行過程

//1、使用new關鍵字建立物件

//2、呼叫建構函式把新建立出來的物件賦值給建構函式內的this

//3、在建構函式內使用this為新建立出來的物件新增成員

//4、預設返回新建立的物件(系統自己返回,不用我們寫return)

//建構函式的返回值

//1、預設返回的是新建立出來的物件

//2、如果我們自己寫return語句,不管寫的是return什麼基本型別(包括null、undefined等),都還是返回新建立出來的物件

//3、如果返回的是object型別的值,將不會返回新建立的物件,而是返回return後面的值

//物件是無序的鍵值對集合

function

test()

test();

function

animal

(name

,type

,barkway)

animal();

//這是乙個錯誤的演示

vardog =

newanimal

("旺財"

,"狗"

,function

());

varcat =

newanimal

("肥喵喵"

,"喵"

,function

());

console

.log

(typeof cat);

// console.log(cat);

//js中提供了兩個方法來呼叫其他物件的方法

//call

//{}建構函式是object

//建構函式是array

//獲取具體型別的方法

//var typestr = object.prototype.tostring.call(想要獲取型別的物件)

//typestr = typestr.slice(8,-1)

//注意:如果像使用正常的函式一樣使用建構函式,建構函式中的this將不再指向新建立的物件(因為根本就沒有建立物件),而是指向window全域性物件

//當使用this給物件新增成員的時候,全部都新增到了window上

//如果建構函式沒有引數,那麼在呼叫的時候小括號可以省略

varstu =

newstudent;

JS建立物件方式

一 物件 對個資料的封裝體,儲存多個資料的容器 可以統一管理多個資料 1 分類 1 內建物件 由es標準定義的物件,在任何es的實現都可以使用 例如 math string number function object 2 宿主物件 由js執行環境提供的物件 例如 dom bom 3 自定義物件 使...

js的建立物件方式

1 object建構函式建立 var user new object user.name xiu user.age 18 2 使用物件字面量表示法 var user 相當於 var user new object var user 物件字面量是物件定義的一種簡寫形式,目的在於簡化建立包含大量屬性的物...

js建立物件的方式

1.object 利用內建物件形式建立 var boy new object 屬性 boy.name 哈哈 屬性 boy.image 男性頭像 屬性 boy.healthpoint hp 100 屬性 boy.magicpoint mp 100 技能 boy.technologys 方法 boy.a...