函数的Arguments与parameters

当谈论一个函数时,我们经常用argument 和 parameter相互代替,感觉好像它们差不多是相同的。  但是现在来澄清一下:

1.一个parameter 是一个变量,它是我们在定义一个函数时放到参数列表里的变量,它是函数定义的一部分,

2.一个argument 则是我们在调用函数时传递给它的一个值。

如下所示:

function skulk(ninja) {
    return performAction(ninja,‘skulking‘);
}

var performAction=function (person,action){
   return person+‘ ‘+action;
}

skulk(‘Tom‘);

如你所见,parameter 伴随着函数的定义,ninja是函数skulk的parameter,person和action是函数performAction的parameter。

argument 伴随着函数的调用,它们是在函数被调用时传递给函数parameter的值。字符串‘Tom‘  是作为argument传递给函数skulk的,skulk内部,变量ninja和字符

串‘skulking‘也是作为argument传递给函数performAction的。

时间: 2024-10-08 10:44:28

函数的Arguments与parameters的相关文章

ES6中Arguments和Parameters用法解析

原文链接 译文 ECMAScript 6 (也称 ECMAScript 2015) 是ECMAScript 标准的最新版本,显著地完善了JS中参数的处理方式.除了其它新特性外,我们还可以使用rest参数.默认值.解构赋值等. 本教程中,我们将详细探索arguments和parameters,看看ES6是如果改善升级它们的. 对比 Arguments 和 Parameters 通常情况下提到 Arguments 和 Parameters, 都认为是可以互换使用的.然而,基于本教程的目的,我们做了明

在ES6中如何优雅的使用Arguments和Parameters

原文地址:how-to-use-arguments-and-parameters-in-ecmascript-6 ES6是最新版本的ECMAScript标准,而且显著的改善了JS里的参数处理.我们现在可以在函数里使用rest参数.默认值,结构赋值,等等语法 在这个教程里,我们将会仔细的探索实参和形参,看看ES6是如何升级他们的. 实参和形参 arguments 和 parameters经常被混为一谈,为了这个教程我们还是做一个2者的区分.在大多数标准中,parameters是我们定义函数时设置的

JS ES6中Arguments和Parameters的区别

1.简谈Arguments和Parameters 通常情况下Arguments和Parameters是可以互相使用的,但是在大多数的标准中这两个还是有那么一丢丢的却别的,Parameters(形式参数)指声明函数名和函数体的时候使用的参数,而Arguments(实际参数)指在函数实际调用的时候传入的确定值 1 function demo(a,b){ 2 console.log(a,b); 3 } 4 demo(1,2); 咱们就上面的函数来说,a.b是函数的形式参数,而在函数的调用中1.2是函数

变量声明置顶规则、函数声明及函数表达式和函数的arguments属性初始化

一.变量声明和变量赋值: if (!("a" in window)) { var a = 1; } alert(a);//a为? 你可能认为alert出来的结果是1,然后实际结果是"undefined".要了解为什么,我们需要知道JavaScript里的3个概念: 1.所有的全局变量都是window的属性,语句 var a = 1;等价于window.a = 1; 可以用如下方式来检测全局变量是否声明: "变量名称" in window 2.声明

关于函数的arguments

函数的参数 -> length 属性 在 js 中凡是定义了一个函数, 就是定义了一个对象. 函数与一般的数据是一样的使用: 赋值, 可以调用. 函数作为对象有一个属性 length 该属性用于描述在定义的时候函数的 参数个数 -> arguments 对象 所谓 arguments, 就是参数的复数形式. 也就是在调用函数的时候, 会给函数传入参数 但是有时不确定需要传入多少参数, 所有在调用时传入的参数都会被 arguments 获取到. 简单的说 arguments 中存储的就是参数的集

JavaScript函数的arguments对象、重载问题

一.arguments对象概述: 1.ECMAScript 函数不介意传递进来多少参数,也不会因为参数不统一而错误. 2.函数体内可以通过 arguments 对象来接收传递进来的参数,并且保存函数参数 function box() { return arguments[0]+' | '+arguments[1]+' | '+arguments[5]; //得到每次参数的值,最后结果是1 | 2 | 6 } alert(box(1,2,3,4,5,6)); //传递参数 二.arguments

JavaScript 没有函数重载&Arguments对象

对于学过Java的人来说,函数重载并不是一个陌生的概念,但是javaScript中有函数重载么...接下来我们就进行测试 <script type="text/javascript"> //JavaScript不存在函数重载现象 var add=function(a,b){ return a+b; } var add=function(a,b,c){ return a+b+c; } <span style="white-space:pre">

js 函数参数 arguments[0]

function box() {            return arguments[0] + '|' + arguments[1];                    }        alert(box(1, 2, 3, 4, 5, 6)); 输出:1|2 说明:1 ECMAScript 函数不介意传递进来多少参数,也不会因为参数不统一而错误.实际上,函数体内可以通过 arguments 对象来接收传递进来的参数.    2 arguments 对象的 length 属性可以得到参数

JavaScript函数式编程(0):函数基础 arguments、this、apply()、call()

1 函数参数 函数的实参和形参个数可以不等,之所以会这样,原因是 ECMAScript 中的参数在内部是用一个数组来表示的.函数接收到的始终都是这个数组,而不关心数组中包含哪些参数(如果有参数的话).如果实参个数大于形参个数,多余的实参不传递值,但是在arguments中可以访问:如果形参个数大于实参,没有传递值的实参将自动被赋予 undefined 值. 2 arguments和this 所有的函数调用都会传递两个隐式参数:arguments和this.实际上,在函数体内可以通过 argume