js 中 callee 与 caller 的作用

简介: js 中 callee 与 caller 的作用

1.caller 返回一个调用当前函数的引用 如果是由顶层调用的话 则返回 null


(举个栗子哈 caller 给你打电话的人 谁给你打电话了 谁调用了你 很显然是下面 a 函数的执行 只有在打电话的时候你才能知道打电话的人是谁 所以对于函数来说 只有 caller 在函数执行的时候才存在)


var callerTest = function() {
    console.log(callerTest.caller);
};
 
function a() {
    callerTest();
}
a(); //输出function a() {callerTest();}
callerTest(); //输出null


2.callee 返回一个正在被执行函数的引用 (这里常用来递归匿名函数本身 但是在严格模式下不可行)


callee 是 arguments 对象的一个成员 表示对函数对象本身的引用 它有个 length 属性(代表形参的长度


var c = function(x, y) {
    console.log(arguments.length, arguments.callee.length, arguments.callee);
};
c(1, 2, 3); //输出3 2 function(x,y) {console.log(arguments.length,arguments.callee.length,arguments.callee)}


目录
相关文章
|
6月前
|
JavaScript 前端开发 算法
JavaScript 中 callee 与 caller 的作用
JavaScript 中 callee 与 caller 的作用
259 2
|
6月前
|
JavaScript 前端开发
JavaScript 中 callee 与 caller 的作用
JavaScript 中 callee 与 caller 的作用
|
6月前
|
JavaScript 前端开发
JavaScript 中 callee 与 caller 的作用
JavaScript 中 callee 与 caller 的作用
|
6月前
|
JavaScript 前端开发
JavaScript 中 callee 与 caller 的作用
JavaScript 中 callee 与 caller 的作用
46 1
|
4月前
|
JavaScript Java 测试技术
基于springboot+vue.js+uniapp的客户关系管理系统附带文章源码部署视频讲解等
基于springboot+vue.js+uniapp的客户关系管理系统附带文章源码部署视频讲解等
95 2
|
4月前
|
JavaScript Java 测试技术
基于springboot+vue.js+uniapp的小区物流配送系统附带文章源码部署视频讲解等
基于springboot+vue.js+uniapp的小区物流配送系统附带文章源码部署视频讲解等
118 4
|
4月前
|
JavaScript Java 测试技术
基于springboot+vue.js+uniapp的宠物援助平台附带文章源码部署视频讲解等
基于springboot+vue.js+uniapp的宠物援助平台附带文章源码部署视频讲解等
81 4
|
4月前
|
JavaScript Java 测试技术
基于springboot+vue.js+uniapp的宠物交易平台附带文章源码部署视频讲解等
基于springboot+vue.js+uniapp的宠物交易平台附带文章源码部署视频讲解等
72 4
|
4月前
|
JavaScript Java 测试技术
基于springboot+vue.js+uniapp的大学生入伍人员管理系统附带文章源码部署视频讲解等
基于springboot+vue.js+uniapp的大学生入伍人员管理系统附带文章源码部署视频讲解等
92 4
|
4月前
|
JavaScript Java 测试技术
基于springboot+vue.js+uniapp宿舍管理系统的附带文章源码部署视频讲解等
基于springboot+vue.js+uniapp宿舍管理系统的附带文章源码部署视频讲解等
83 3