<dfn id="w48us"></dfn><ul id="w48us"></ul>
  • <ul id="w48us"></ul>
  • <del id="w48us"></del>
    <ul id="w48us"></ul>
  • JavaScript實例講解

    時間:2024-09-25 20:36:11 JavaScript 我要投稿
    • 相關(guān)推薦

    JavaScript實例講解

      這帶來的好處是內(nèi)部函數(shù)可以訪問定義它們的外部函數(shù)的參數(shù)和變量。

      首先,我們來構(gòu)造一個簡單的對象。

      復(fù)制代碼 代碼如下:

      var testObj = {

      value: 10,

      add: function(inc){

      this.value += (typeof inc === "number") ? inc : 1;

      }

      };

      testObj.add();

      testObj.value; // 11

      testObj.add(2);

      testObj.value; // 13

      這樣寫就有一個問題,value值不能保證不會被非法修改,可以按如下的方法進行修改。

      復(fù)制代碼 代碼如下:

      var testObj = (function(){

      var value = 10;

      return {

      add: function(inc){

      value += (typeof inc === "number") ? inc : 1;

      },

      getValue: function(){

      return value;

      }

      };

      })();

      testObj.add();

      testObj.getValue(); // 11

      testObj.add(2);

      testObj.getValue(); // 13

      我們可以通用調(diào)用一個函數(shù)的形式去初始化testObj,該函數(shù)會返回一個對象字面量,函數(shù)里定義了一個value變量,該變量對add和getValue方法總是可用的,但函數(shù)的作用域使得它對其他的程序來說是不可見的。同時,我們還可以得出一個結(jié)論,內(nèi)部函數(shù)擁有比它的外部函數(shù)更長的生命周期。

      我們再繼續(xù)看一個構(gòu)造函數(shù)調(diào)用的例子。

      復(fù)制代碼 代碼如下:

      var MyObj = function(str){

      this.status = str;

      };

      MyObj.prototype.getStatus = function(){

      return this.status;

      };

      var obj = new MyObj("javascript");

      obj.getStatus(); // "javascript"

      這樣寫并沒有錯,但是會有一點“多此一舉”,為什么要用一個getStatus方法去訪問一個本可以直接訪問到的屬性呢?如果status是私有屬性,那當(dāng)然才有意義。

      復(fù)制代碼 代碼如下:

      var obj = function(status){

      return {

      getStatus: function(){

      return status;

      }

      };

      };

      var myObj = obj("javascript");

      myObj.getStatus(); // "javascript"

      這里當(dāng)我們調(diào)用obj的時候,它返回包含getStatus方法的一個新對象,該對象的一個引用保存在myObj中,即使obj已經(jīng)返回了,但getStatus方法仍然享有訪問obj對象的status屬性的特權(quán)。getStatus方法并不是訪問該參數(shù)的一個副本,它訪問的就是該參數(shù)本身。這是可能的,因為該函數(shù)可以訪問它被創(chuàng)建時所處的上下文環(huán)境,這被稱為閉包。

    【JavaScript實例講解】相關(guān)文章:

    JavaScript的課堂講解09-03

    JavaScript fontcolor方法入門實例07-07

    JavaScript中push(),join() 函數(shù)實例詳解09-05

    javascript閉包的定義及應(yīng)用實例分析08-25

    實例講解托福閱讀推斷題技巧06-20

    對javascript的理解08-08

    常用的JavaScript模式09-22

    Javascript的this用法簡述08-15

    JavaScript學(xué)習(xí)筆記08-24

    JavaScript 基礎(chǔ)教學(xué)09-29

    主站蜘蛛池模板: 99国产精品私拍pans大尺度| 人妻少妇看A偷人无码精品视频| 亚洲精品高清国产一久久| 日韩欧美国产精品第一页不卡| 大桥未久在线精品视频在线| 欧美精品手机在线播放| 中文字幕乱码中文乱码51精品 | 久久九九亚洲精品| 亚洲高清国产拍精品26U| 久久国产午夜精品一区二区三区 | 免费精品一区二区三区第35| 亚洲精品国偷自产在线| 国产精品久久久福利| 网友偷拍日韩精品| 成人国产一区二区三区精品| 四虎国产精品永久在线看| 国产精品99无码一区二区| 男人的天堂精品国产一区| 日韩精品久久无码人妻中文字幕 | 精品免费视在线观看| 中文字幕亚洲精品无码| 91亚洲国产成人久久精品网址| 国产精品露脸国语对白| 国产精品日韩欧美久久综合| 99久久国产综合精品麻豆| 成人午夜精品久久久久久久小说| 亚洲性日韩精品一区二区三区| 国产成人精品a视频一区| 国产精品你懂得| 91精品美女在线| 99国产精品久久| 91精品啪在线观看国产| 国产精品久久久福利| 国产精品福利在线观看| 国产福利91精品一区二区三区 | 精品一区二区三区免费 | 尤物国产在线精品福利一区| 日韩麻豆国产精品欧美| 2020最新久久久视精品爱| 99久久精品免费看国产一区二区三区 | 亚洲国产精品无码av|