1.可訪問屬性
var person=) //資料成員得屬性都包括可讀性,可遍歷性,可刪除性和value,通過defineproperty()函式是指明物件的資料屬性或者是訪問器屬性
person.name="object"; name為訪問器屬性
console.log(person.age); 13
console.log(person.***); man
person.***="woman";
console.log(person.***); man(唯讀)
2.configurable
需要注意的是:物件的可刪除性在被修改為false之後,物件的configurable就不能被修改,否則出錯
object.defineproperty(person,"height", //判斷屬性是否在原型中。
//原型和 for-in
//使用for-in迴圈,可以返回所有可列舉的例項化屬性和原型屬性,並且包括遮蔽了原型中方法的例項化屬性。但是在愛ie8之前存在問題。
//取得物件上所有可列舉的例項屬性,可以通過es5的object.keys(),返回乙個屬性陣列。接受乙個物件作為引數。
//獲得person物件的原型中所有的可列舉屬性
獲得person.prototype中所有的屬性
//直接把prototype看作乙個物件直接賦值,
8.原型重寫:1.prototype.constructor的指向問題被更改,2.與最初的prototype的聯絡切斷。
function animals(){
1.var pig=new animals(); //此時pig建構函式的[[ptototype]]指標指向的是最初原型,並且重寫原型物件打斷了之前與最初原型的聯絡。這是undefined的原因
但是 1、2 如果調換位置的話,建構函式與函式原型的聯絡就重新連線。
2.animals.prototype={
constructor:animals,
legnum:2,
headnum:4
console.log(pig.legnum); undefined
console.log(animals.prototype.constructor==animals); //true
但是需要注意的是,重寫原型函式,原先的函式的prototype屬性的constructor屬性不再指向animal函式,而是指向object,當然我們可以在原型物件中指定constructor的值。
9,原型的缺點
當原型中包含著包含引用型別值的時候,原型會因為個別物件的改變,而改變所有的物件屬性
c 之函式原型
函式原型 作用域 函式連線規範 返回值型別 函式呼叫規範 函式名 型別1 形參1 函式定義 函式連線規範 返回值型別 函式呼叫規範 函式名 形參列表 介面函式一定要指定呼叫規範,若不指定 使用預設 當別人宣告該介面時與預設的呼叫規範不一致 函式原型與實現的排程規範不一致 時,將發生編譯連線錯誤,或執...
php學習之函式呼叫 call
摘要 內容 1 forward static call vs forward static call array forward static call 傳入的引數是正常的單個引數由逗號隔開,forward static call array 傳入的引數則由陣列包裹,第乙個引數均為函式名 傳入的引數...
C 之String類函式原型
include include using namespace std class string string const string s 複製建構函式 void show friend ostream operator ostream os,string s 過載輸出運算子 1 friend i...