程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程綜合問答 >> prototype-關於javascript原型對象的一些問題

prototype-關於javascript原型對象的一些問題

編輯:編程綜合問答
關於javascript原型對象的一些問題

如下一個原型對象:

 function Box(){}
 Box.prototype.name = 'Programmer';
 Box.prototype.method = function(){
     return this.name;
 };

 var box = new Box();

1、box對象的原型屬性__proto__訪問的是原型對象prototype還是原型對象的constructor屬性?
2、通過box.method()可以訪問原型對象的method方法,通過box.__proto__.method()也可以訪問,這兩種方式的區別是什麼?訪問原型的屬性和方法該用哪種方式?
3、構造函數Box的原型對象是Box.prototype嗎?
4、原型對象存儲在哪裡?請細說一下詳細的過程
5、實例對象的原型對象的__proto__指向哪裡?如果存在這個對象,那麼這個對象的__proto__又指向哪裡?
6、構造函數Box的__proto__指向哪裡?如果存在這個對象,那麼這個對象的__proto__又指向哪裡?

最佳回答:


  1. box.__proto__ == Box.prototype ; //true
  2. box.method = 12; box.method == 12;//true; box.__proto__.method == 12;//false;

box.__proto__.method = 1212;
box.method == 1212;//false;
box.method == 12;//true;
box.__proto__.method == 1212;//true
Box.prototype.method == 1212;//true

  1. 5. 6. 請查看下圖: 圖片說明
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved