分享

JavaScript 中 arguments.callee.caller.arguments[0] 的理解

 quasiceo 2014-06-03

arguments.callee.caller.arguments[0] 
用于获取事件对象
argument.callee就是函数本身,caller函数的调用函数.


<input type='text' value='click me' onkeydown="doKeyDown('a')"/>

<script type="text/javascript">
function doKeyDown(arg){
var _e = window.event || arguments.callee.caller.arguments[0];

alert(arguments.callee);
//    将显示 doKeyDown 函数的定义
//    function doKeyDown(arg) {
//        var _e = window.event || arguments.callee.caller.arguments[0];
//        alert(_e);
//        alert(arguments.callee);
//    }

alert(arguments.callee.arguments[0]);
//    将显示 a 即 doKeyDown 参数

alert(arguments.callee.caller);
//    将显示 onkeydown 键盘事件函数的定义
//    function onkeydown(event) {
//        doKeyDown("a");
//    }

alert(arguments.callee.caller.arguments[0]);
//    将显示 [object KeyboardEvent] 即 事件对象
}


    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多