1. 函數的prototype屬性
-- 每個函數都有一個prototype屬性, 它默認指向一個Object空物件(即稱為: 原型物件)
-- 原型對像中有一個屬性constructor, 它指向函數物件
2. 給原型對像添加屬性(一般都是方法)
-- 作用: 函數的所有實例對像自動擁有原型中的屬性(方法)
-- 原型上面的方法是給實例對象使用的

 

<script type="text/javascript">

  // 每個函數都有一個prototype屬性, 它默認指向一個Object空物件(即稱為: 原型物件)
  console.log(Date.prototype, typeof Date.prototype); // Object, "object"
  function Fun() {}

  console.log(Fun.prototype);  // 默認指向一個Object空物件(沒有Fun自定義的屬性和方法)

  // 原型對像中有一個屬性constructor, 它指向函數物件
  console.log(Date.prototype.constructor === Date);   // true
  console.log(Fun.prototype.constructor === Fun);   // true

  // 給原型物件添加屬性(一般是方法) ---> 實例對象可以訪問
  Fun.prototype.test = () => console.log('test()');
  const fun = new Fun();
  fun.test();

</script>

文章標籤

全站熱搜

bingzhichen 發表在 痞客邦 留言(0) 人氣()