JAVA & XML & JAVASCRIPT & AJAX & CSS

          Web 2.0 技術(shù)儲(chǔ)備............

            BlogJava :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
            77 隨筆 :: 17 文章 :: 116 評(píng)論 :: 0 Trackbacks

          http://www.bjcan.com/hengxing/readlou.asp?id=1236

          利用 this 實(shí)現(xiàn)的公共方法中可以訪問(wèn)類(lèi)的私有成員(用 var 聲明的變量),私有方法(用 function 直接定義的方法);
          利用原型擴(kuò)展實(shí)現(xiàn)的方法中,無(wú)法調(diào)用私有成員和變量。
          例子如下所示(把其中注釋掉的兩行恢復(fù)就可以看到區(qū)別):

          ?function T(name) {
          ??? this.Name = name;
          ??? var x = 5;
          ????
          ??? function privateFunc() {
          ??????? alert('in private method: do sometheing');
          ??? }
          ????
          ??? this.PublicFunc = function() {
          ??????? // 可以調(diào)用私有方法,訪問(wèn)私有成員變量。
          ??????? privateFunc();
          ??????? alert('x = ' + x);
          ??????? alert('in public method: do something else.');
          ??? }
          }
          ?
          //var t = new T('t1');
          //t.PublicFunc();
          ?
          T.prototype.PublicFunc2 = function() {
          ??? alert('in public method 2.');
          ??? // 下面兩行都會(huì)出錯(cuò)。在利用 prototype 擴(kuò)展的方法里無(wú)法調(diào)用對(duì)象的私有方法,也訪問(wèn)不到通過(guò) var 定義的私有成員。
          ??? // alert(x);
          ??? // privateFunc();
          }
          ?
          var t2 = new T('t2');
          t2.PublicFunc();
          t2.PublicFunc2();

          posted on 2006-03-20 09:42 Web 2.0 技術(shù)資源 閱讀(529) 評(píng)論(0)  編輯  收藏 所屬分類(lèi): Javascript
          主站蜘蛛池模板: 苏尼特右旗| 阳曲县| 湛江市| 枞阳县| 阳西县| 龙山县| 昌图县| 凉城县| 行唐县| 冀州市| 武安市| 米林县| 仁寿县| 鄂托克前旗| 张家港市| 宁蒗| 确山县| 简阳市| 龙游县| 盐源县| 响水县| 乌拉特中旗| 本溪| 抚宁县| 绥芬河市| 英山县| 万山特区| 陇西县| 巨野县| 永清县| 朝阳区| 广灵县| 滦南县| 青海省| 凤山市| 桑植县| 建德市| 墨江| 武宣县| 延寿县| 军事|