JavaScript arguments 对象详解:获取参数与模拟重载

作者:异步漫步

时间:2026-10-27

浏览:318

本文详细介绍 JavaScript 中 arguments 对象的用法。该对象允许函数接收任意数量的参数,通过 arguments.length 可获取参数个数。文章展示了如何利用 arguments 实现不定参数的累加运算,并解释了 JavaScript 不支持传统函数重载,但可通过 arguments 模拟重载行为的原理。

文章目录

arguments 对象的基本用法

在 ECMAScript 中,函数对传入参数的数量没有限制,即使参数数量不一致也不会报错。在函数内部,可以通过 arguments 对象来接收所有传递进来的参数。


代码如下:

 
function box() {
return arguments[0]+' | '+arguments[1]; //得到每次参数的值
} 
alert(box(1,2,3,4,5,6)); //传递参数
arguments 对象提供了一个 length 属性,用于获取传入参数的数量。
function box() {
return arguments.length; //得到 6
} 
alert(box(1,2,3,4,5,6));


利用 length 属性处理动态参数

利用 length 属性,我们可以智能地判断参数的数量,从而对参数进行合理处理。


例如,需要实现一个加法运算,将所有传入的数字累加,但数字的个数是不确定的。


代码如下:

 
function box() {
var sum = 0;
if (arguments.length == 0) return sum; //如果没有参数,退出
for(var i = 0;i < arguments.length; i++) { //如果有,就累加
sum = sum + arguments[i];
} 
return sum; //返回累加结果
} 
alert(box(5,9,12));
通过 arguments 模拟函数重载ECMAScript 中的函数不像其他高级语言那样支持传统的函数重载功能。
function box(num) {
return num + 100;
} 
function box (num) { //会执行这个函数
return num + 200;
} 
alert(box(50)); //返回结果

实用工具推荐

电子包浆

绿化、压缩、噪点和虚拟水印,自由调节做旧程度。

使用 ›
图片压缩

选择画质和输出格式,预览压缩前后的大小。

使用 ›
相关文章