<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    weidagang2046的專欄

    物格而后知致
    隨筆 - 8, 文章 - 409, 評論 - 101, 引用 - 0
    數據加載中……

    JavaScript中的arguments,callee,caller,call,appy

    < script?language = " JavaScript " >
    /*
    ?*?演示arguments的用法,如何獲取實參數和形數數
    ?
    */

    function ?argTest(a,b,c,d) {
    ????
    var ?numargs? = ?arguments.length;????? // ?獲取被傳遞參數的數值。
    ???? var ?expargs? = ?argTest.length;??????? // ?獲取期望參數的數值。
    ????alert( " 實參數目為: " + numargs)
    ????alert(
    " 形數數目為: " + expargs)

    ????alert(arguments[
    0 ])?????????
    ????alert(argTest[
    0 ])?????????? // undefined?沒有這種用法
    }

    // argTest(1,2)
    //
    argTest(1,2,3,4,5)

    /*
    ?*??arguments不是數組(Array類)
    ?
    */


    Array.prototype.selfvalue?
    = ? 1 ;
    function ?testAguments() {
    ????alert(
    " arguments.selfvalue= " + arguments.selfvalue);
    }

    // alert("Array.sefvalue="+new?Array().selfvalue);
    //
    testAguments();





    /*
    ?*?演示函數的caller屬性.
    ?*?說明:(當前函數).caller:返回一個對函數的引用,該函數調用了當前函數
    ?
    */


    function ?callerDemo()? {
    ????
    if ?(callerDemo.caller)? {
    ????????
    var ?a = ?callerDemo.caller.arguments[ 0 ];
    ????????alert(a);
    ????}
    ? else ? {
    ????????alert(
    " this?is?a?top?function " );
    ????}

    }

    function ?handleCaller()? {
    ????callerDemo();
    }


    // callerDemo();
    //
    handleCaller("參數1","參數2");


    /*
    ?*?演示函數的callee屬性.
    ?*?說明:arguments.callee:初始值就是正被執行的?Function?對象,用于匿名函數
    ?
    */

    function ?calleeDemo()? {
    ????alert(arguments.callee);
    }

    // calleeDemo();
    //
    (function(arg0,arg1){alert("形數數目為:"+arguments.callee.length)})();


    /*
    ?*?演示apply,call函數的用法
    ?*?說明:作用都是將函數綁定到另外一個對象上去運行,兩者僅在定義參數方式有所區別:
    ?*???????apply(thisArg,argArray);
    ?*?????call(thisArg[,arg1,arg2…]?]);
    ?*?????即所有函數內部的this指針都會被賦值為thisArg
    ?
    */


    ?
    function ?ObjectA() {
    ????alert(
    " 執行ObjectA() " );
    ????alert(arguments[
    0 ]);
    ????
    this .hit = function (msg) {alert(msg)}
    ????
    this .info = " 我來自ObjectA "
    ?}

    ?
    ?
    function ?ObjectB() {
    ????alert(
    " 執行ObjectB() " );
    ????
    // 調用ObjectA()方法,同時ObjectA構造函數中的所有this就會被ObjectB中的this替代
    ????ObjectA.apply( this ,arguments); // ObjectA.call(this);
    ????alert( this .info);
    ?}

    ?
    // ObjectB('參數0');


    ?
    var ?value = " global?變量 " ;
    ?
    function ?Obj() {
    ????
    this .value = " 對象! " ;
    ?}

    ?
    function ?Fun1() {
    ????alert(
    this .value);
    ?}

    ?
    // Fun1();
    ? // Fun1.apply(window);?
    ? // Fun1.apply(new?Obj());?
    </ script >

    from: http://m.tkk7.com/xfan/archive/2007/01/12/93504.html

    posted on 2007-01-13 08:52 weidagang2046 閱讀(440) 評論(0)  編輯  收藏 所屬分類: Javascript

    主站蜘蛛池模板: 国产黄色片在线免费观看| 亚洲欧美成人av在线观看| 一级毛片免费毛片毛片| 日韩在线免费播放| 亚洲综合精品第一页| 久久WWW色情成人免费观看| 亚洲国产日韩在线一区| 一本岛高清v不卡免费一三区| 亚洲av片不卡无码久久| 免费无码A片一区二三区| 亚洲精品中文字幕| 国产免费私拍一区二区三区| 国产精品亚洲天堂| 亚洲 国产 图片| 巨胸喷奶水www永久免费| 久久久久亚洲AV片无码| 免费A级毛片无码专区| 亚洲精品第五页中文字幕| h在线观看视频免费网站| 亚洲香蕉在线观看| 小小影视日本动漫观看免费| 人人爽人人爽人人片A免费| 亚洲女同成av人片在线观看| 久别的草原电视剧免费观看| 亚洲va精品中文字幕| 国产精品久久免费视频| fc2免费人成在线| 色拍自拍亚洲综合图区| 最近2019中文字幕mv免费看 | 免费播放国产性色生活片| 亚洲人成影院在线观看 | 97精品免费视频| 亚洲爆乳无码专区www| 在线观看午夜亚洲一区| 最近免费视频中文字幕大全| 亚洲成a∧人片在线观看无码| 国产亚洲免费的视频看| 性色av无码免费一区二区三区| 老司机午夜精品视频在线观看免费 | 亚洲18在线天美| 国产亚洲精品拍拍拍拍拍|