arguments callee(求助:js下面这行代码activeXString是什么 typeof arguments.callee.activeXString!=“string“)

2023-11-04 15:31:28 20

arguments callee(求助:js下面这行代码activeXString是什么  typeof arguments.callee.activeXString!=“string“)

大家好,关于arguments callee很多朋友都还不太明白,不过没关系,因为今天小编就来为大家分享关于求助:js下面这行代码activeXString是什么 typeof arguments.callee.activeXString!=“string“的知识点,相信应该可以解决大家的一些困惑和问题,如果碰巧可以解决您的问题,还望关注下本站哦,希望对各位有所帮助!

本文目录

求助:js下面这行代码activeXString是什么 typeof arguments.callee.activeXString!=“string“

这里的activeXString是只createXHR对象的一个属性,自定义的.总的来说activeXString一般只会有2个类型的值,除非有在其他地方赋值...这2个类型的值是null,和versions数组中的某一个这个函数的作用就是创建一个异步请求的对象.从函数开始if(typeofXMLHttpRequest!="undefined"){ 先判断了是否存在XMLHttpRequest如果有 就直接返回他创造的对象.}else if(typeofActiveXObject!="undefined"){ 然后判断了是否存在ActiveXObject如果存在,则创建他的对象,但这个对象需要一个传入参数,如下:new ActiveXObect(versions); 需要versions数组中的某个项,数组的3个项分别对应3个版本.从最高版本开始创建,如果创建失败,就被catch抓住,不处理,继续循环.直到循环创建成功为止,然后给自己添加一个属性叫activeXStringarguments.callee.activeXStringarguments是javascript函数的内置对象,代表传入参数的集合callee就代表对象本身即new createXHR()如果3次循环完了都没找到,就会抛出thrownewError("NoXHRobjectavailable.");的错误.其实你把arguments.callee.activeXString换成this.activeXString就容易理解了.

with(arguments.callee)是什么意思

资料上说 callee 返回正被执行的 Function 对象,也就是所指定的 Function 对象的正文。 callee 属性是 arguments 对象的一个成员,它表示对函数对象本身的引用,这有利于匿名 函数的递归或者保证函数的封装性,例如下边示例的递归计算1到n的自然数之和。而该属性 仅当相关函数正在执行时才可用。还有需要注意的是callee拥有length属性,这个属性有时候 用于验证还是比较好的。arguments.length是实参长度,arguments.callee.length是 形参长度,由此可以判断调用时形参长度是否和实参长度一致

caller和callee的区别

calleecallee是对象的一个属性,该属性是一个指针,指向参数arguments对象的函数首先我们来写个阶成函数:function chen(x){if (x《=1) {return 1;} else{return x*chen(x-1);};};从这个函数中可以看出来,用到了递归函数,要是改变了函数名,里面的函数名也要随着改变,这样很不方便所以我们用callee来试试function chen(x){if (x《=1) {return 1;}else{return x*arguments.callee(x-1);};};我们来分析一下为什么这样写:根据callee的定义,可以看出来callee是arguments对象的一个属性,指向arguments对象的函数,这个函数就是chen(chen=arguments.callee),这样解释应该可以理解了吧。callercaller是函数对象的一个属性,该属性保存着调用当前函数的函数的引用(指向当前函数的直接父函数)先来个例子吧function a(){b();};function b(){alert(b.caller);};a(); //结果就是弹出函数a和内容我们来解释一下吧,首先函数b的属性caller调用当前函数b的函数引用a(就是指向当前函数b的父函数a),所以结果就是弹出 function a(){ b();};那么了解了caller和callee,那么可以不可以将二者结合在一起来使用呢function b(){alert(b.caller);};从这个代码可以看出b函数中调用了b函数名,这样当函数名改变时就很不方便,我们需要替换里面的那个b前面我们知道用什么方法可以指向当前对象,下面我们就来修改一下:(function a(){b();})();function b(){alert(arguments.callee.caller);};从代码中可以看出我们用arguments.callee代替了b函数

下面代码中 arguments.callee.offset是怎么解释offset属性代表什么

该函数以指定的引用为参照系,通过给定偏移量得到新的引用。返回的引用可以为一个单元格或单元格区域。并可以指定返回的行数或列数。语法OFFSET(reference,rows,cols,height,width)Reference 作为偏移量参照系的引用区域。Reference 必须为对单元格或相连单元格区域的引用;否则,函数 OFFSET 返回错误值 #VALUE!。Rows 相对于偏移量参照系的左上角单元格,上(下)偏移的行数。如果使用 5 作为参数 Rows,则说明目标引用区域的左上角单元格比 reference 低 5 行。行数可为正数(代表在起始引用的下方)或负数(代表在起始引用的上方)。Cols 相对于偏移量参照系的左上角单元格,左(右)偏移的列数。如果使用 5 作为参数 Cols,则说明目标引用区域的左上角的单元格比 reference 靠右 5 列。列数可为正数(代表在起始引用的右边)或负数(代表在起始引用的左边)。Height 高度,即所要返回的引用区域的行数。Height 必须为正数。Width 宽度,即所要返回的引用区域的列数。Width 必须为正数。说明如果行数和列数偏移量超出工作表边缘,函数 OFFSET 返回错误值 #REF!。如果省略 height 或 width,则假设其高度或宽度与 reference 相同。函数 OFFSET 实际上并不移动任何单元格或更改选定区域,它只是返回一个引用。函数 OFFSET 可用于任何需要将引用作为参数的函数。例如,公式 SUM(OFFSET(C2,1,2,3,1)) 将计算比单元格 C2 靠下 1 行并靠右 2 列的 3 行 1 列的区域的总值。该函数的意思是以"进口数量"工作表的D31单元格为参照,0表示偏移的行数(同一行),"综合!$A$3"表示以"综合"工作表A3单元格的数值为偏移的列数,后面那个1表示1行,本来还有一个参数,省略了也相当于1(表示1列)。所以,当"综合"工作表A3单元格的数值为1时,公式的实际结果就是"进口数量"工作表E31单元格的值。

javascript中offset什么意思啊如下arguments.callee.offset中offset的具体含义是什么啊,求详解!

/*不知道楼主的程序是要做什么……不过我看到offset首先想到css的偏移量。callee 属性是 arguments 对象的一个成员,该属性仅当相关函数正在执行时才可用。callee 属性的初始值是正被执行的 Function 对象。这将允许匿名函数成为递归的。*//*IE、Firefox3及更高和Opera9.5及更高为每一个元素提供了一个getBoundingClientRect()方法。这个方法返回一个矩形对象,含4个属性:left、top、right和bottom。这些属性给出了元素在页面中相对于视口的位置。但IE认为左上角坐标为(2,2),其他浏览器认为是(0,0)。*/ //所以我用过的方法是这样的(获取元素大小):function getBoundingClientRect(element){ var scrollTop = document.documentElement.scrollTop; var scrollLeft = document.documentElement.scrollLeft;     if(element.getBoundingClientRect){         If(typeof arguments.callee.offset != "number"){             var temp = document.createElement("div");             temp.style.cssText = "position:absolute;left:0;top:0;";             document.body.appendChild(temp);             arguments.callee.offset = -temp.getBoundingClientRect().top - scrollTop;             document.body.removeChild(temp);             temp = null;         }             var rect = element.getBoundingClientRect();         var offset = arguments.callee.offset;             return{             left: rect.left + offset,             right: rect.right + offset,             top: rect.top + offset,             bottom: rect.bottom + offset         };     }else{         var actualLeft = getElementLeft(element);         var actualTop = getElementTop(element);             return{             left: actualLeft - scrollLeft,             right: actualLeft + element.offsetWidth - scrollLeft,             top: actualTop - scrollTop,             bottom: actualTop + element.offsetHeight - scrollTop         }     } }

关于JavaScript中argument.caller的理解问题!谢谢!

    首先要分清caller和callee,arguments.callee返回当前正在执行的函数,function.caller返回函数的调用体所在函数。

随便弄了个示例代码

function parentCheck() {    check("");    function check() {        subCheck();        function subCheck() {            console.log(arguments.callee);            console.log(subCheck.caller.caller)        }    }}parentCheck();

    arguments.callee返回subCheck的函数体,subCheck.caller返回调用subCheck的函数,即check,而再往上一层,subCheck.caller.caller就是返回调用check的函数体,也就是parentCheck。那如果是继续往上一层呢?subCheck.caller.caller.caller?就会变成null。书里也有讲,arguments.caller在非严格模式下永远是undefined。我们就可以判断值是null还是undefined来区分arguments.caller和函数的caller。

    JS的函数是可以无限嵌套的,就构成了一棵树,而function.caller就提供了一个访问父节点的方法,通过灵活应用function.caller,我们甚至可以用脚本画出整棵树,只要我们在任意地方成功插入一段JS代码,又或者是,像网站统计之类的第三方代码,我们就能窥视其他代码。

    所以为了安全期间,严格模式禁止调用caller、callee、arguments变量,在浏览器中的报错为

Uncaught TypeError: ’caller’, ’callee’, and ’arguments’ properties may not be accessed on strict mode functions or the arguments objects for calls to them

个人敝见,无书可循,希望对您有帮助

火狐和ie下获取javascript 获取event的方法(推荐)

javascript获取event先从一个简单的例子说起,一个简单的button控件如下:《inputtype=’button’name=’mybtn’id=’mybtn’onclick=’myFunc()’/》然后为其注册事件,这样的情况,怎么在javascript里获取event呢,特别是firefox的情况。请看:《scripttype=’text/javascript’》functionmyFunc(){varev=window.event||arguments.callee.caller.arguments,et=ev.srcElement||ev.target;alert(et.tagName);}《/script》不出意外的话,在ie/ff下,上面例子都将输出INPUT,即是触发click事件节点的标签名,ie的event获取这里就不说了,重点说说ff下的情况。这里的arguments.callee.caller.arguments看起来又长又怪,为什么在firefox的情况下,这个东西就是event呢?首先得了解arguments.callee是什么东西,caller又是什么样的属性?argments.callee就是函数体本身,arguments.callee.caller就是函数体的调用函数体简单例子如下:《scripttype=’text/javascript’》functiona(){b();}functionb(){alert(b===arguments.callee)alert(b.caller===a)alert(arguments.callee.caller===a)}a();《/script》不出意外,上面的例子将输出3个true,表明当a()调用时,函数b与函数a的关系。好,弄清楚了arguments.callee与caller,我们再把原先的例子改改《scripttype=’text/javascript’》functionmyFunc(){alert(arguments.callee.caller.toString())varev=window.event||arguments.callee.caller.arguments,et=ev.srcElement||ev.target;}《/script》我们把argument.callee.caller的函数体输出,看看到底在ie和ff下有何区别.可以看到ie下输出为functionanonymous(){myFunc()}ff下输出为functiononclick(event){myFunc();}由此看出在html控件中直接注册事件在ie/ff下表现的不同,ie下定义了一个匿名函数,内部再执行用户定制的函数(myFunc),而ff下则有所不同,首先ff下定义了一个与节点事件同名的函数,这里是onclick事件,所以是functiononclick,然后event作为一个参数传入,内部再执行myFunc.所以当事件触发时,在myFunc里,argument.callee.caller就是指向functiononclick,当然,argument.callee.caller.arguments即为event了.以上这篇火狐和ie下获取javascript获取event的方法(推荐)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

关于arguments callee和求助:js下面这行代码activeXString是什么 typeof arguments.callee.activeXString!=“string“的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

arguments callee(求助:js下面这行代码activeXString是什么  typeof arguments.callee.activeXString!=“string“)

本文编辑:admin
arguments callee ,c ,js

更多文章:


maxdos v8(Maxdos V8怎样网刻,不是5.8教程)

maxdos v8(Maxdos V8怎样网刻,不是5.8教程)

其实maxdos v8的问题并不复杂,但是又很多的朋友都不太了解Maxdos V8怎样网刻,不是5.8教程,因此呢,今天小编就来为大家分享maxdos v8的一些知识,希望可以帮助到大家,下面我们一起来看看这个问题的分析吧!本文目录Maxd

2024年2月5日 02:15

尘埃2怎么用手柄?求尘埃2的键盘飘移方法,别说原理,只说按键顺序之类

尘埃2怎么用手柄?求尘埃2的键盘飘移方法,别说原理,只说按键顺序之类

大家好,今天小编来为大家解答以下的问题,关于尘埃2操作,尘埃2怎么用手柄这个很多人还不知道,现在让我们一起来看看吧!本文目录尘埃2怎么用手柄求尘埃2的键盘飘移方法,别说原理,只说按键顺序之类尘埃2windowslive键盘失灵求尘埃2键盘操

2024年3月29日 00:55

域名备案查询系统(域名备案查询系统)

域名备案查询系统(域名备案查询系统)

各位老铁们好,相信很多人对域名备案查询系统都不是特别的了解,因此呢,今天就来为大家分享下关于域名备案查询系统以及域名备案查询系统的问题知识,还望可以帮助大家,解决大家的一些困惑,下面一起来看看吧!本文目录域名备案查询系统域名备案查询网站就是

2024年9月16日 10:15

wowshell(怎样退出自动加入组队频道我用wowshell魔兽精灵,每次上线就会自动加入组队频道,我想知道怎样不自动加入)

wowshell(怎样退出自动加入组队频道我用wowshell魔兽精灵,每次上线就会自动加入组队频道,我想知道怎样不自动加入)

大家好,今天小编来为大家解答以下的问题,关于wowshell,怎样退出自动加入组队频道我用wowshell魔兽精灵,每次上线就会自动加入组队频道,我想知道怎样不自动加入这个很多人还不知道,现在让我们一起来看看吧!本文目录怎样退出自动加入组队

2024年6月26日 06:27

英雄战歌官网(有一个单机版的手机游戏做的和梦三国似的那个叫什么)

英雄战歌官网(有一个单机版的手机游戏做的和梦三国似的那个叫什么)

“英雄战歌官网”相关信息最新大全有哪些,这是大家都非常关心的,接下来就一起看看英雄战歌官网(有一个单机版的手机游戏做的和梦三国似的那个叫什么)!本文目录有一个单机版的手机游戏做的和梦三国似的那个叫什么混沌与秩序之英雄战歌混沌与秩序之英雄战歌

2024年6月12日 20:20

阿拉德之怒新版变态版能玩吗(阿拉德之怒苹果手机能玩吗)

阿拉德之怒新版变态版能玩吗(阿拉德之怒苹果手机能玩吗)

各位老铁们好,相信很多人对阿拉德之怒新版变态版能玩吗都不是特别的了解,因此呢,今天就来为大家分享下关于阿拉德之怒新版变态版能玩吗以及阿拉德之怒苹果手机能玩吗的问题知识,还望可以帮助大家,解决大家的一些困惑,下面一起来看看吧!本文目录阿拉德之

2024年10月6日 01:50

xp正版验证破解补丁(XP正版验证补丁怎么用啊 )

xp正版验证破解补丁(XP正版验证补丁怎么用啊 )

这篇文章给大家聊聊关于xp正版验证破解补丁,以及XP正版验证补丁怎么用啊 对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。本文目录XP正版验证补丁怎么用啊 Windows XP sp2 正版验证破解xp系统无法通过正版验证怎样通过wi

2023年12月20日 17:00

围棋哪些棋手的棋谱比较好?有哪些是被阿尔法狗推翻的围棋定式

围棋哪些棋手的棋谱比较好?有哪些是被阿尔法狗推翻的围棋定式

各位老铁们好,相信很多人对棋谱都不是特别的了解,因此呢,今天就来为大家分享下关于棋谱以及围棋哪些棋手的棋谱比较好的问题知识,还望可以帮助大家,解决大家的一些困惑,下面一起来看看吧!本文目录围棋哪些棋手的棋谱比较好有哪些是被阿尔法狗推翻的围棋

2024年6月11日 20:58

新浪微博中的 微人脉 有什么作用呢谢谢?微人脉的介绍

新浪微博中的 微人脉 有什么作用呢谢谢?微人脉的介绍

各位老铁们,大家好,今天由我来为大家分享微人脉,以及新浪微博中的 微人脉 有什么作用呢谢谢的相关问题知识,希望对大家有所帮助。如果可以帮助到大家,还望关注收藏下本站,您的支持是我们最大的动力,谢谢大家了哈,下面我们开始吧!本文目录新浪微博中

2023年12月3日 15:40

反恐精英单机版(单机cs怎么加人)

反恐精英单机版(单机cs怎么加人)

各位老铁们好,相信很多人对反恐精英单机版都不是特别的了解,因此呢,今天就来为大家分享下关于反恐精英单机版以及单机cs怎么加人的问题知识,还望可以帮助大家,解决大家的一些困惑,下面一起来看看吧!本文目录单机cs怎么加人CS1.5单机版仓库地图

2024年7月5日 19:51

花漾搜索app(ipad怎么开启权限)

花漾搜索app(ipad怎么开启权限)

大家好,今天小编来为大家解答以下的问题,关于花漾搜索app,ipad怎么开启权限这个很多人还不知道,现在让我们一起来看看吧!本文目录ipad怎么开启权限”花漾搜索“APP将正式上线,你认为它的下载量会高吗花漾搜索怎么添加学校ipad怎么开启

2024年4月2日 11:10

《上古卷轴6:阿利诺》的故事背景是否主要有关先祖神州和精灵人?为什么上古卷轴6会拖这么久

《上古卷轴6:阿利诺》的故事背景是否主要有关先祖神州和精灵人?为什么上古卷轴6会拖这么久

各位老铁们,大家好,今天由我来为大家分享上古卷轴6,以及《上古卷轴6:阿利诺》的故事背景是否主要有关先祖神州和精灵人的相关问题知识,希望对大家有所帮助。如果可以帮助到大家,还望关注收藏下本站,您的支持是我们最大的动力,谢谢大家了哈,下面我们

2024年6月2日 13:35

撸的时候x幻想的对象不是女朋友,这正常吗?我该如何解释性幻想和现实之间的区别呢

撸的时候x幻想的对象不是女朋友,这正常吗?我该如何解释性幻想和现实之间的区别呢

各位老铁们好,相信很多人对x幻想都不是特别的了解,因此呢,今天就来为大家分享下关于x幻想以及撸的时候x幻想的对象不是女朋友,这正常吗的问题知识,还望可以帮助大家,解决大家的一些困惑,下面一起来看看吧!本文目录撸的时候x幻想的对象不是女朋友,

2024年7月20日 16:06

d3dx9_43 dll放哪里(文件已损坏或丢失d3dx943.dl应该放在哪里win7系统)

d3dx9_43 dll放哪里(文件已损坏或丢失d3dx943.dl应该放在哪里win7系统)

大家好,关于d3dx9_43 dll放哪里很多朋友都还不太明白,不过没关系,因为今天小编就来为大家分享关于文件已损坏或丢失d3dx943.dl应该放在哪里win7系统的知识点,相信应该可以解决大家的一些困惑和问题,如果碰巧可以解决您的问题,

2024年7月20日 11:35

输入法下载百度输入法(小米百度输入法那里可以下载)

输入法下载百度输入法(小米百度输入法那里可以下载)

大家好,今天小编来为大家解答以下的问题,关于输入法下载百度输入法,小米百度输入法那里可以下载这个很多人还不知道,现在让我们一起来看看吧!本文目录小米百度输入法那里可以下载手机输入法怎么设置百度输入法下载百度输入法怎样把百度输入法下载到手机百

2024年8月28日 06:15

糖果浏览器官网(糖果浏览器打不开游戏怎么办)

糖果浏览器官网(糖果浏览器打不开游戏怎么办)

本篇文章给大家谈谈糖果浏览器官网,以及糖果浏览器打不开游戏怎么办对应的知识点,文章可能有点长,但是希望大家可以阅读完,增长自己的知识,最重要的是希望对各位有所帮助,可以解决了您的问题,不要忘了收藏本站喔。本文目录糖果浏览器打不开游戏怎么办糖

2024年7月7日 03:08

每天挣3元一5元的软件(有什么软件像百度知道一样每天可以赚2~3块钱,靠谱的)

每天挣3元一5元的软件(有什么软件像百度知道一样每天可以赚2~3块钱,靠谱的)

本篇文章给大家谈谈每天挣3元一5元的软件,以及有什么软件像百度知道一样每天可以赚2~3块钱,靠谱的对应的知识点,文章可能有点长,但是希望大家可以阅读完,增长自己的知识,最重要的是希望对各位有所帮助,可以解决了您的问题,不要忘了收藏本站喔。本

2024年10月20日 06:05

注册email电子邮箱(手机email信箱怎么注册)

注册email电子邮箱(手机email信箱怎么注册)

各位老铁们好,相信很多人对注册email电子邮箱都不是特别的了解,因此呢,今天就来为大家分享下关于注册email电子邮箱以及手机email信箱怎么注册的问题知识,还望可以帮助大家,解决大家的一些困惑,下面一起来看看吧!本文目录手机email

2024年10月5日 16:30

魔兽世界永恒岛怎么去(魔兽世界永恒岛干耳朵圣殿怎么进)

魔兽世界永恒岛怎么去(魔兽世界永恒岛干耳朵圣殿怎么进)

其实魔兽世界永恒岛怎么去的问题并不复杂,但是又很多的朋友都不太了解魔兽世界永恒岛干耳朵圣殿怎么进,因此呢,今天小编就来为大家分享魔兽世界永恒岛怎么去的一些知识,希望可以帮助到大家,下面我们一起来看看这个问题的分析吧!本文目录魔兽世界永恒岛干

2024年6月7日 03:17

windows installer清理实用工具(请问Windows Install clean up怎么用)

windows installer清理实用工具(请问Windows Install clean up怎么用)

大家好,今天小编来为大家解答以下的问题,关于windows installer清理实用工具,请问Windows Install clean up怎么用这个很多人还不知道,现在让我们一起来看看吧!本文目录请问Windows Install c

2024年3月27日 18:20

近期文章

本站热文

电脑包尺寸对照表(电脑包要多大)
2024-07-23 11:15:58 浏览:3908
e10000(皖E10000是什么车)
2024-07-17 11:22:25 浏览:3508
ati radeon hd 5650(电脑的显卡是ATI Mobility Radeon HD 5650 (MADION PRO) ( 1 GB ) 这个显卡)
2024-07-07 05:01:37 浏览:3103
华为mate20pro版本区别(mate20pro有必要买ud版吗)
2024-07-24 08:26:42 浏览:2631
ipad买蜂窝版还是wifi版(ipad air 5买蜂窝好不好)
2024-07-17 14:35:19 浏览:2240
标签列表

热门搜索