函数的caller属性

今天我在这里通过一个例子介绍一下函数自身的call属性。

例:

function whoCallMe(){

  alert("My caller is" + whoCallMe.caller);

};

function CallerA(){whoCallMe();};

function CallerB(){whoCallMe():};

alert{whoCallMe.caller};//输出结果为:null;

whoCallMe();//输出结果为:My caller is null;

CallerA();//输出结果为:My caller is function CallerA(){whoCallerMe();};

CallerB();//输出结果为:My caller is function CallerB(){whoCallerMe();};

虽然这个属性没怎么用,但是我觉得挺有趣的。(8/17记)

函数的caller属性,布布扣,bubuko.com

时间: 2024-08-26 02:27:14

函数的caller属性的相关文章

js函数的caller属性

函数的caller属性返回的是调用当前函数的上层函数,caller的初始值是null.当函数没有被其他函数调用时caller的值为null. function b(){ function c(){ console.log(c.caller); } c(); } b(); 结果: function b(){ function c(){ console.log(c.caller); } c(); }

js函数的内部属性---arguments,callee,caller

在接下来的几篇文章中,我大家谈谈函数的内部属性,arguments,callee,caller (1)arguments,是一个类数组对象,其中包含了传入函数的所有参数,主要用途是,保存函数的参数: 代码1: function aa(b){alert(arguments);} aa(4); function aa(a,b,c,d){alert(arguments.length);} aa(1,2,3,4); function aa(a,b,c,d){alert(arguments[2]);} a

JavaScript函数之实际参数对象(arguments) / callee属性 / caller属性 / 递归调用 / 获取函数名称的方法

函数的作用域:调用对象 JavaScript中函数的主体是在局部作用域中执行的,该作用域不同于全局作用域.这个新的作用域是通过将调用对象添加到作用域链的头部而创建的(没怎么理解这句话,有理解的亲可以留言告诉我, 谢谢).因为调用对象是作用域链的一部分,所以在函数体内可以把这个对象属性作为变量来访问. 调用对象的属性包括:用var声明的局部变量,函数形参,还有一种特殊的属性arguments 函数的实际参数:实际参数对象 arguments对象,用来引用实际参数对象.函数的arguments对象并

caller 属性(函数)(JavaScript)

转载:http://msdn.microsoft.com/zh-cn/library/7t96kt3h(v=vs.94).aspx 获取调用当前函数的函数. functionName.caller 备注 functionName 对象是任何正在执行的函数的名称. caller 属性只有当函数正在执行时才被定义. 如果函数是从 JavaScript 程序的顶层调用的,则 caller 包含 null. 如果在字符串上下文中使用 caller 属性,则其结果和 functionName.toStri

caller 属性和callee属性

1.caller 属性 返回一个对函数的引用,即调用了当前函数的函数体. functionName.caller :functionName 对象是所执行函数的名称. 说明: 对于函数来说,caller 属性只有在函数执行时才有定义. 如果函数是由 JScript 程序的顶层调用的,那么 caller 包含的就是 null .如果在字符串上下文中使用 caller 属性,那么结果和 functionName.toString 一样,也就是说,显示的是函数的反编译文本. Js代码 function

js中的caller属性和callee属性

应该用"属性"来称呼caller和callee,而不是方法. caller:返回调用当前函数的函数的引用.a调用b,则返回a(a是boss,因为a把b叫过去干活了): callee: 这个属性中保存b(b是被叫过去差遣的).返回正被执行的 Function 对象,也就是所指定的 Function 对象的正文. 如果函数是由 Javascript 程序的顶层调用的,那么 caller 包含的就是 null .(全局作用域中调用,值为null) --但是callee属性有什么用处呢?? 1

传智播客视频学习 ---->>>> 函数的形参属性

函数形参的属性: #include <iostream> // 此处的参数 int a,只是具有对外的接口, // 其他的属性跟函数体中的b具有一样的属性, // 在函数执行结束的时候就将其销毁了 int functionParameterProperty( int a ){ int b = 10; a = b; printf( "a = %d", a ); } int main (){ int a = 0; functionPatameterProperty( a );

变量声明置顶规则、函数声明及函数表达式和函数的arguments属性初始化

一.变量声明和变量赋值: if (!("a" in window)) { var a = 1; } alert(a);//a为? 你可能认为alert出来的结果是1,然后实际结果是"undefined".要了解为什么,我们需要知道JavaScript里的3个概念: 1.所有的全局变量都是window的属性,语句 var a = 1;等价于window.a = 1; 可以用如下方式来检测全局变量是否声明: "变量名称" in window 2.声明

Android C语言_init函数和constructor属性及.init/.init_array节探索

本篇文章主要介绍了"Android C语言_init函数和constructor属性及.init/.init_array节探索",主要涉及到Android C语言_init函数和constructor属性及.init/.init_array节探索方面的内容,对于Android C语言_init函数和constructor属性及.init/.init_array节探索感兴趣的同学可以参考一下. 了解C语言的程序猿都知道有两种方法可以让一部分代码在so或可执行文件被加载的时候先于其它任何函