js中的 caller与callee用法小实例
来源:互联网 发布:淘宝学生平价女装店 编辑:程序博客网 时间:2024/06/09 08:28
caller
函数fun的caller返回调用fun的函数对象,即fun的执行环境,如果fun的执行环境为window则返回null
function fun(){ console.log(fun.caller)//这里必须写在fun里面,因为caller只有函数执行过程中才有效}fun();//结果为:null
下面包裹一层
function a(){ fun(); function fun(){ console.log(fun.caller)//这里必须写在fun里面,因为caller只有函数执行过程中才有效 }}a();
结果为: a函数
在包裹一层
function a(){ b(); function b(){ fun(); function fun(){ console.log(fun.caller)//这里必须写在fun里面,因为caller只有函数执行过程中才有效 } }}a();
结果为: b函数
callee
这个属性在函数的arguments上面
function a (){ console.log(arguments.callee)}a();//结果为a函数本身
下面一个经典的阶乘函数
function sum (num){ if(num <= 1){ return 1; }else{ return num * (sum(num - 1)) }}console.log(sum(5))//结果:5*4*3*2*1=120
为避免函数名称修改致使函数内部报错,改写成下面
function sum (num){ if(num <= 1){ return 1; }else{ return num * (arguments.callee(num - 1)) }}console.log(sum(5))//结果:5*4*3*2*1=120
//callee的另外一种用途
function a(num1,num2,num3){ console.log(arguments.length);//实参长度为1 console.log(arguments.callee.length);//行参长度为3}a(0);
0 0
- js中的 caller与callee用法小实例
- js中的caller和callee
- js中的caller和callee
- js中的callee和caller
- js中的caller,callee,call,apply用法详解
- js中的apply/call/caller/callee/bind
- js中的caller和callee属性
- js中的caller和callee属性
- js中的caller和callee属性
- JS中的caller和callee属性
- js中的arguments,caller,callee,apply
- js中的arguments,caller,callee,apply
- js中的caller和callee属性
- js中的arguments,caller,callee,apply
- javascript callee 与 caller 的用法
- js中callee与caller的区别
- JavaScript中的callee与caller的区别
- js中caller,callee
- The Python Challenge Level-8 Solution
- mpeg dash简单介绍
- MATLAB中导出结构体中数据到文件
- 欢迎使用CSDN-markdown编辑器
- JS脚本实现浏览器自动点击(阿里员工秒杀月饼)
- js中的 caller与callee用法小实例
- Layout动画:在android布局发生变化时添加动画效果
- Android6.0系统增加那些新特性
- iOS 的部分问题
- STM32的堆栈(Heap&Stack)空间
- JS获取当前浏览器名称
- Java中Log4J使用教程(一)
- 测试服务器更新 —simon工作
- TiDB 集群安装