js物件學習筆記

2021-10-23 01:18:02 字數 2953 閱讀 5009

-1.建立物件

`/*var 物件例項名 = */

var song =

};

/*new 的四個步驟 : 1、建立乙個新物件 2.this指向這個新物件  3、執行**,對this賦值

4、返回this*/

var car =

newobject()

;//建立例項

car.name =

"bmw"

;car.location =

"everywhere"

;car.price =

231800

;

-通過工廠方法建立物件

/*通過函式建立物件的方法*/

funciton createcarobject

(name,location,price)

;return car;

}var car1 =

createcarobject

("bmw"

,"everywhere"

,231800

);

//建構函式

function

car(name,location,price)

//建立物件的例項

var mycar =

newcar

("bmw"

,"everywhere"

,231800

);

/*建立函式時,會自動擁有乙個prototype屬性,這個屬性的值(物件)即為該函式的原型物件*/

function

car();

car.prototype.name =

"bmw"

;car.prototype.location =

"everywhere"

;car.prototype.price =

231800

;var mycar =

newcar()

;var hiscar =

newcar()

;hiscar.name =

"lamborghini"

;//改變了,他的車就不是bmw了,而是lamborghini

2.屬性的處理

-刪除屬性 delete

#### 自有屬性的概念:物件例項私有的屬性,只有該物件例項可用

#### 共有屬性的概念:物件例項共有的屬性,所有物件例項都可用

var  watch =

;object.prototype.value =

"one"

;/*1.刪除自有屬性 delete 物件例項.屬性*/

delete watch.name;

console.

log(watch.name)

;//undefined

/*2.刪除共有屬性 delete 建構函式.prototype.屬性*/

delete object.prototype.value;

console.

log(watch.value)

;//undefined

3.屬性的檢測和列舉

屬性的檢測

* 屬性名 in 物件名

* hasownproperty(繼承object物件)

var  watch =

;object.prototype.value =

"one"

;/*1.判斷是否是物件例項的屬性 */

console.

log(

"value"

in watch )

;//true 舉這個例子,請注意它在prototype那(共有屬性)

console.

log(

"a"in watch)

;// false

/*2.判斷是否是物件例項私有的屬性 自有屬性*/

console.

log(watch.

hasownproperty

('name'))

;//true

console.

log(watch.

hasownproperty

('value'))

;//false

屬性的列舉

可列舉性:使用者自己定義的屬性預設為可列舉,系統內建的物件的屬性預設為不可列舉

(一種情況除外:當屬性的原型是繼承於其它物件原型時,這時使用者定義的屬性就是不可列舉的)

列舉屬性三種方法:

*for…in…迴圈 ## 會遍歷物件中的所有可列舉屬性

for

(var p in num)

//無法列印,number中的屬性無法被列舉,for in 不起作用

object.getownpropertynames()不區分是否可被列舉

var car =

object.

defineproperty

(car,

"range",)

;console.

log(object.

getownpropertynames

(car));

//輸出["name","location","color","range"]

object.keys()返回可列舉的自有屬性

//**同上

console.

log(object.

keys

(car));

//輸出["name","location","color"]

學的越來越遠,筆記做了很久,尷尬,屬於小菜鳥的掙扎。

js學習筆記 原生物件

原生物件分為兩類 原始型別和物件型別,原始型別又分為兩類,一類是空值,一類是包裝物件 物件型別也可以分為兩類,一類是構造器物件,一類是單體內建物件 js表示空值的值有兩個,分別是undefined和null。邏輯上undefined表示原始資料型別的空值,null表示物件型別的空值。字串string...

JS學習筆記 Function物件

一 建立 有三中建立方法,比較常見的是後兩種 1.var 方法名 new function 形參列表 方法體 了解即可,要加雙引號。2.function 方法名 形參列表 3.var 方法名 new function 形參列表 doctype html utf 8 title head var fu...

JS學習筆記 物件導向

類 物件 類 模子 物件 產品 成品 蛋糕 物件 模子 類 array 類 arr 物件 array.push 錯 arr.push 對 new arr 錯 原型prototype 是加到類上面,而不是物件。混合方式構造物件 方法都是相同的,屬性都是不同的。方法 函式 屬性 變數 用 建構函式 加 ...