A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本次带来的是笔试中会遇到的callee和caller。
笔试题题目是这样的:是怎么理解
JavaScript中callee和caller的,他们分别有什么作用
1.callee是函数arguments对象内的指针,它指向当前的函数,使得在函数内部递归调用当前函数时,不需要调用函数名称,减少函数内部对于函数名的依赖
[JavaScript] 纯文本查看 复制代码
function test() {
        console.log(arguments.callee);
}
test();


2.caller是函数的一个属性,它指向调用当前函数的函数,如果当前函数在其他函数内被调用,则返回调用它的那个函数,如果是在全局环境下被调用,则返回 null
可以利用caller的特性跟踪函数的调用链
[JavaScript] 纯文本查看 复制代码
function fn1() {
        console.log(fn1.caller);
        console.log(arguments.callee.caller);
}
function fn2() {
        fn1()
}
fn2();



0 个回复

您需要登录后才可以回帖 登录 | 加入黑马