最新前端知识尽在ASEOE,喜欢就收藏本站吧! 导航:HTML5CSS3JS移动端JQ插件

Arguments

一个函数的参数和其他属性

可用性

JavaScript 1.1; JScript 2.0; ECMAScript v1

从…继承/覆盖

继承于 Object

语法

arguments

arguments[n]

元素

Arguments对象只在函数体中定义。虽然技术上说来,它不是数组,但Arguments对 象有带编号的属性,这些属性可以作为数组元素,而且它有length属性,该属性声 明了数组元素的个数。它的元素是作为参数传递给函数的值。元素0是第—个参数, 元素1是第二个参数,以此类推。所有作为参数传递的值都会成为Arguments对象的 数组元素,无论函数声明中是否有这些参数的名字。

属性

callee

对当前正在执行的函数的引用。

length

传递给函数的参数个数,同时也是Arguments对象中的数组元素个数。

描述

当一个函数被调用时,会为该函数创建一个Arguments对象,局部变量arguments也 会自动地初始化以便引用那个Arguments对象。Arguments对象的主要用途是提供一 种方法,用来确定传递给函数的参数个数并且引用未命名的参数。除了数组元素和属 性length之外,属性callee可以使未命名的函数引用自身。

大多数情况下,可以将Arguments对象看做是具有callee属性的数组。但它不是Array类的实例,Arguments.1ength属性没有Array.1ength属性的专有行为,所以不能用它来改变数组的大小。

Arguments对象有一个非常特殊的特性。当函数具有命名的参数时,Arguments对象的数组元素是存放函数参数的局部变量的同义词。Arguments对象和参数名提供了引用同一个变量的两种不同方法。用参数名改变参数值,会改变用Arguments对象得到的值,改变用Arguments对象得到的参数值,也会改变用参数名得到的值。

参阅

Function