Javascript中arguments和arguments.callee的區(qū)別淺析
通過一個(gè)例子來理解下arguments與arguments.callee的具體區(qū)別:
代碼如下:
<script type="text/javascript">
function check(args){
var ac = args.length;
var ex = args.callee.length;
document.write("ac:" + ac + '<br>');
document.write("ex:" + ex + '<br>');
if (ac != ex) {
document.write("wrong number of arguments: expected: " + ex + "; actually passed" + ac + '<br>');
}
}
function f(x, y, z) {
check(arguments);
document.write(x + y + z);
}
</script>
調(diào)用方法:
<input name="wr" type="button" value="調(diào)用" onclick="f(1,2)" />
運(yùn)行后的結(jié)果為:
ac:2
ex:3
wrong number of arguments: expected: 3; actually passed2
NaN
我的理解:
arguments即調(diào)用對(duì)象,就是調(diào)用這個(gè)方法的對(duì)象
arguments.callee即當(dāng)前對(duì)象,實(shí)際上就是返回當(dāng)前執(zhí)行的函數(shù)對(duì)象
通過這個(gè)例子,可以看出
arguments實(shí)際上是指函數(shù)“f(1,2)”
argument.callee實(shí)際上是指"function f(x,y,z){}"
相關(guān)文章
關(guān)于不同頁(yè)面之間實(shí)現(xiàn)參數(shù)傳遞的幾種方式討論
下面小編就為大家?guī)硪黄P(guān)于不同頁(yè)面之間實(shí)現(xiàn)參數(shù)傳遞的幾種方式討論。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-02-02詳解微信小程序中var、let、const用法與區(qū)別
微信小程序是可以使用最新ES6標(biāo)準(zhǔn)規(guī)范的Javascript來開發(fā)的,所有ES6中的新特性微信小程序也是支持的,下面我們來總結(jié)下信小程序中var、let、const用法與區(qū)別2020-01-01Adapter適配器模式在JavaScript設(shè)計(jì)模式編程中的運(yùn)用分析
適配器模式的作用是解決兩個(gè)軟件實(shí)體間的接口不兼容的問題,在JavaScript尤其是AJAX方面比較常用,接下來看一下對(duì)Adapter適配器模式在JavaScript設(shè)計(jì)模式編程中的運(yùn)用分析2016-05-05javascript函數(shù)中的arguments參數(shù)
arguments當(dāng)然只在function體內(nèi)才有意義, arguments.length 返回的是傳入function的實(shí)參個(gè)數(shù)2010-08-08JS特殊函數(shù)(Function()構(gòu)造函數(shù)、函數(shù)直接量)區(qū)別介紹
函數(shù)是由這樣的方式進(jìn)行聲明的:關(guān)鍵字 function、函數(shù)名、一組參數(shù),以及置于括號(hào)中的待執(zhí)行代碼;Function()構(gòu)造函數(shù)實(shí)際上是功能完整的對(duì)象2013-05-05總結(jié)js函數(shù)相關(guān)知識(shí)點(diǎn)
本篇文章給大家簡(jiǎn)要分析了JS中函數(shù)相關(guān)的重要知識(shí)點(diǎn),對(duì)此有興趣的朋友可以參考學(xué)習(xí)下。2018-02-02