javaScript 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 这个属性, 来智能的判断有多少参数, 然后把参数进行合理的应用。
比如,要实现一个加法运算,将所有传进来的数字累加,而数字的个数又不确定。


代码如下:

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));

ECMAScript 中的函数,没有像其他高级语言那种函数重载功能。
function box(num) {
return num + 100;
}
function box (num) { //会执行这个函数
return num + 200;
}
alert(box(50)); //返回结果

(0)

相关推荐

  • Javascript中的arguments对象

    在js中一切都是对象,连函数也是对象,函数名其实是引用函数定义对象的变量. 1.什么是arguments? 这个函数体内的arguments非常特殊,实际上是所在函数的一个内置类数组对象,可以用数组的[i]和.length. 2.有什么作用? js语法不支持重载!但可用arguments对象模拟重载效果. arguments对象:函数对象内,自动创建的专门接收所有参数值得类数组对象. arguments[i]: 获得传入的下标为i的参数值 arguments.length: 获得传入的参数个数!

  • 跟我学习javascript的arguments对象

    1.什么是arguments arguments 是是JavaScript里的一个内置对象,它很古怪,也经常被人所忽视,但实际上是很重要的.所有主要的js函数库都利用了arguments对象.所以agruments对象对于javascript程序员来说是必需熟悉的.在javascript函数体内,标识符arguments具有特殊含义.它是调用对象的一个特殊属性,用来引用Arguments对象.Arugments对象就像数组,注意这里只是像并不是哈. javascript函数体内,argument

  • JavaScript的arguments对象应用示例

    arguments 对象 在函数代码中,使用特殊对象 arguments,开发者无需明确指出参数名,就能访问它们. 例如,在函数 sayHi() 中,第一个参数是 message.用 arguments[0] 也可以访问这个值,即第一个参数的值(第一个参数位于位置 0,第二个参数位于位置 1,依此类推). 因此,无需明确命名参数,就可以重写函数: function sayHi() { if (arguments[0] == "bye") { return; } alert(argume

  • Javascript中arguments对象的详解与使用方法

    一.arguments使用方法 通过方括号语法访问每一个元素 var fun = function(one) { console.log(arguments[0]); console.log(arguments[1]); console.log(arguments[2]); } fun(1, 2, 3) // 1 // 2 // 3 通过length属性,查看到底要几个参数 function fun() { return arguments.length; } fun(1, 2, 3) // 3

  • Javascript学习笔记之函数篇(四):arguments 对象

    每一个 Javascript 函数都能在自己作用域内访问一个特殊的变量 - arguments.这个变量含有一个传递给函数的所有参数的列表. arguments 对象不是一个数组.尽管在语法上它跟数组有相同的地方,例如它拥有 length 属性.但它并不是从 Array.prototype 继承而来,实际上,它就是一个对象. 因此,我们不能直接对 arguments 使用一些数组的方法,例如 push, pop 或 slice 等. 所以为了使用这些方法,我们就需要将其转换为一个真正的数组. 转

  • JavaScript中如何通过arguments对象实现对象的重载

    复制代码 代码如下: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Insert title here</title> <script type="text/javascript"> /* *1.js 中不存在函数的重载 2.js函数定义时候的形参个数,和执行时候时,传递的实参的个数可以不一样. 3.js执行时

  • javascript内置对象arguments详解

    一.什么是argumentsarguments 是是JavaScript里的一个内置对象,它很古怪,也经常被人所忽视,但实际上是很重要的.所有主要的js函数库都利用了arguments对象.所以agruments对象对于javascript程序员来说是必需熟悉的.所有的函数都有属于自己的一个arguments对象,它包括了函所要调用的参数.他不是一个数组,如果用typeof arguments,返回的是'object'.虽然我们可以用调用数据的方法来调用arguments.比如length,还有

  • Javascript中arguments对象详解

    在上篇文章中我们讨论了javascript中的默认参数,这篇文章,我们来讨论下javascript的arguments参数对象. 如下例的一个函数,我们如何根据传入参数的不同来做不同的处理呢? 复制代码 代码如下: function addAll () {     // What do we do here? } // Should return 6 addAll(1, 2, 3); // Should return 10 addAll(1, 2, 3, 4); 幸运的是,javascript有

  • js arguments对象应用介绍

    在javascript中,不需要明确指出参数名,就能访问它们.如: 复制代码 代码如下: function hi(){ if(arguments[0]=="andy"){ return; } alert(arguments[0]); } 用arguments[0]可以访问第一个参数,如此类推. 利用arguments对象可以实现重载,利用arguments.length可以获取函数的参数个数,如下: 复制代码 代码如下: function hi(){ if(arguments.leng

  • JS中使用变量保存arguments对象的方法

    迭代器(iterator)是一个可以顺序存取数据集合的对象.其一个典型的API是next方法.该方法获得序列中的下一个值. 迭代器示例 题目:希望编写一个便利的函数,它可以接收任意数量的参数,并为这些值建立一个迭代器. 测试代码好下: var it=values(,,,,,,,,); it.next();// it.next();// it.next();// 分析:由于values函数需要接收任意多个参数,这里就需要用到上一节讲到的构建可变参数的函数的方法.然后里面的迭代器对象来遍历argum

随机推荐