//定義一個空對象,這裏的空指的是其自身屬性爲空,dog對象繼承了Object.prototype的屬性和方法 var dog={} //添加屬性/方法 dog.name="Beijing" dog.getName= function(){ return this.name } //檢索 dog["name"] //Beijing dog.name //Beijing //徹底刪除屬性/方法 delete dog.name
對象經過引用來傳遞,他們永遠不會被複制this
var Bob = dog Bob.footers = 4 var f = dog.footers // 由於Bob 和f指向同一個對象,因此結果f 的結果爲4 var a={}, b={}, c={} //a,b,c每一個都引用不一樣的空對象 a = b =c ={} //a,b,c引用同一個空對象
每一個對象都鏈接到一個原型,並能夠從中繼承屬性,全部字面量建立的對象都鏈接到Object.prototypeprototype
咱們常常用typeof檢查對象的屬性,但typeof對原型鏈的對像也會進行檢查,能夠使用hasOwnProperty,他只檢測對象的自有屬性,不會檢查原型鏈上的屬性code
man.hasOwnProperty('legs') //true man.hasOwnProperty('constructor') //false
delete運算符能夠刪除對象的自身屬性,而不會對原型鏈上的對象有影響,有時delete對象上的屬性會致使原型鏈上的屬性溢出來對象