js之argument详解

Posted gongyijie

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js之argument详解相关的知识,希望对你有一定的参考价值。

arguments是什么呢?

  它是一个对象,是一个长的很像数组的对象。

arguments包含什么内容呢?

  它是函数运行时的实参列表。

我们来实际操作一下看arguments里到底有什么

  js代码

  技术分享图片

 

  控制台打印

  技术分享图片

 再来一例

技术分享图片

  我们传了四个参数,在php中我们是获取不到第四个参数的,但是js不同,arguments收集所有的实参,即使没有与之对应的形参

  打印结果

  技术分享图片

 再来一个例子

  技术分享图片

  打印结果

  技术分享图片

  arguments与形参是一一映射的

刚打印arguments对象我们可以看到,我们可以直接用arguments.length直接获取实参个数

  arguments还有一个属性callee,我们还以第一个为例,展开callee

  技术分享图片

 

   可看出callee中装了当前正在运行的函数

我们可以不用函数名,匿名函数,执行递归

  技术分享图片

 

以上是关于js之argument详解的主要内容,如果未能解决你的问题,请参考以下文章

JS高级——arguments参数详解

js之argument小解

js中的apply,call,arguments,callee,caller详解

arguments对象详解

js中函数的arguments详解 模拟实现Math.max()的运行原理(相当于java中的不固定传参)

详解JavaScript中Arguments对象用途