<dfn id="w48us"></dfn><ul id="w48us"></ul>
  • <ul id="w48us"></ul>
  • <del id="w48us"></del>
    <ul id="w48us"></ul>
  • javascript中callee與caller的區別

    時間:2024-10-06 09:45:56 JavaScript 我要投稿
    • 相關推薦

    javascript中callee與caller的區別

      callee

      callee是對象的一個屬性,該屬性是一個指針,指向參數arguments對象的函數

      首先我們來寫個階成函數:

      function chen(x){if (x<=1) {return 1;} else{return x*chen(x-1);};};

      從這個函數中可以看出來,用到了遞歸函數,要是改變了函數名,里面的函數名也要隨著改變,這樣很不方便所以我們用callee來試試

      function chen(x){if (x<=1) {return 1;}else{return x*arguments.callee(x-1);};};

      我們來分析一下為什么這樣寫:根據callee的定義,可以看出來callee是arguments對象的一個屬性,指向arguments對象的函數,這個函數就是chen(chen=arguments.callee),這樣解釋應該可以理解了吧。

      caller

      caller是函數對象的一個屬性,該屬性保存著調用當前函數的函數的引用(指向當前函數的直接父函數)

      先來個例子吧

      function a(){b();};function b(){alert(b.caller);};a(); //結果就是彈出函數a和內容

      我們來解釋一下吧,首先函數b的屬性caller調用當前函數b的函數引用a(就是指向當前函數b的父函數a),所以結果就是彈出 function a(){ b();};

      那么了解了caller和callee,那么可以不可以將二者結合在一起來使用呢

      function b(){alert(b.caller);};

      從這個代碼可以看出b函數中調用了b函數名,這樣當函數名改變時就很不方便,我們需要替換里面的那個b

      前面我們知道用什么方法可以指向當前對象,下面我們就來修改一下:

      (function a(){b();})();function b(){alert(arguments.callee.caller);};

      從代碼中可以看出我們用arguments.callee代替了b函數,所以解決了一下麻煩。。。。。

      以上所述就是本文的全部內容了,希望大家能夠喜歡。

    【javascript中callee與caller的區別】相關文章:

    JavaScript中的with關鍵字07-24

    在Java中執行JavaScript代碼07-14

    Javascript中typeof 用法歸納09-27

    抽象語法樹在JavaScript中的應用08-18

    JavaScript中的三種對象10-24

    perl- javascript中class的機制05-03

    JavaScript類定義原型方法的兩種實現的區別07-11

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

    詳解JavaScript中的splice()使用方法08-20

    javascript中for/in循環以及常見的使用技巧06-24

    主站蜘蛛池模板: 国产精品亚洲аv无码播放| 免费精品99久久国产综合精品| 国产精品兄妹在线观看麻豆| 国产成人精品久久一区二区三区av| 亚洲精品无码久久久久去q| 99久久免费只有精品国产| 久久这里只有精品18| 手机日韩精品视频在线看网站| 91精品国产综合久久香蕉 | 国产综合精品久久亚洲| 国产午夜精品一区二区三区漫画| 无码人妻精品一区二| 国产精品亚洲αv天堂无码| 国产在线精品网址你懂的| 精品无码一区在线观看| 中国国产精品| 亚洲国产精品一区二区九九 | 中文精品久久久久国产网址| 国产国产精品人在线观看| 亚洲国产另类久久久精品黑人| 久久久精品人妻无码专区不卡 | 国产成人精品一区二区秒拍| 亚洲AV无码久久精品狠狠爱浪潮| 蜜臀av无码人妻精品| 亚洲精品国产成人99久久| 九九99精品久久久久久| 99精品国产丝袜在线拍国语| 麻豆亚洲AV永久无码精品久久| 亚洲国产成人一区二区精品区 | 国产精品女同一区二区| 久久久久久国产精品免费无码| 中国精品18videosex性中国| 亚洲国产精品成人午夜在线观看| 欧美日韩精品在线观看| 日本精品少妇一区二区三区| 久久久久无码国产精品不卡| 精品人妻少妇一区二区三区| 久久五月精品中文字幕| 久久久无码精品亚洲日韩软件| 久久亚洲国产精品123区| 欧洲精品一区二区三区在线观看|