arguments参数,arguments

http://www.itjxue.com  2023-01-17 16:58  来源:未知  点击次数: 

剩余参数和arguments对象

对于一个普通函数fn,函数内部内置了一个 arguments 对象,当用于接收实参的形参个数不确定时,可以用arguments接收。

arguments展示形式是一个伪数组。

伪数组也叫类数组,并不是真正意义上的数组,是一组具有数组的length属性以及下标,但是不具有数组的push、pop、reverse等方法的对象。

箭头函数里不能使用arguments获取参数列表。

但是可以使用剩余参数获取参数列表。

剩余参数语法允许我们将一个不定数量的参数表示为一个数组。

具有伪数组不具有的pop、push、sort方法等。

1. 剩余参数只包含那些没有对应形参的实参,而 arguments 对象包含了传给函数的所有实参。

2. 剩余参数是真正的数组,arguments对象不是一个真正的数组。

3. arguments对象还有一些附加的属性。

arguments对象的属性:

END

下一篇:7种不同函数内的this指向问题

推荐阅读:

1. 高阶函数(Higher-order function)

2. 闭包(closure)

深入理解JS函数的参数(arguments)的使用

JS函数的参数在function内可以用arguments对象来获取。

参数的调用有两种方式:

1、期望参数的使用。

2、实际传递参数的使用。

应用举例:

function

Test(a,

b){

var

i,

s

=

"Test函数有";

var

numargs

=

arguments.length;

//

获取实际被传递参数的数值。

var

expargs

=

Test.length;

//

获取期望参数的数值,函数定义时的预期参数个数(有a和b

2个参数)。

s

+=

(expargs

+

"个参数。");

s

+=

"\n\n"

for

(i

=0

;

i

numargs;

i++){

//

获取参数内容。

s

+=

"

第"

+

i

+

"个参数是:"

+

arguments[i]

+

"\n";

}

return(s);

//

返回参数列表。

}

alert(Test('param1','second

param','第三个参数'));

需要注意的是:

arguments是一个object对象,它不是数组,不能对它使用shift、push、join等方法。

上述举例时用的arguments[i]中的i只是作为arguments对象的属性,并不能理解为数组下标。

代码演示

html

head

script

language="javascript"

function

reloadList(){

if(typeof

arguments[0]

==

"function"){

arguments[0].call(this);

arguments[0]();

}

if(typeof

arguments[0]

==

"string")

alert(arguments[0]);

if(typeof

arguments[0]

==

"number")

alert(arguments[0]);

if(typeof

arguments[0]

==

"undefined")

alert(arguments[0]);

if(typeof

arguments[0]

==

"boolean")

alert(arguments[0]);

if(typeof

arguments[0]

==

"null")

alert(arguments[0]);

}

reloadList(function(){});

/script

/head

body

/body

以上这篇深入理解JS函数的参数(arguments)的使用就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

JS中的arguments和this

1.arguments,伪数组,包含函数中所有的参数

2.函数如果不给任何条件,那么this默认指向window

3.如果要指定this就通过call来传this

fn.call(1)

如果传的this不是对象,那么js会自动帮忙封装为对象?

这时的this是1对象

如何声明的时候不转化为对象呢

function fn(){

'use strict'

console.log(this)

}

fn.call(1),this就是1

f.call(1,2,3,4)

此时对象1就是this,234就是arguments

4.this是隐藏参数,arguments是显示参数

5.let person={

name:'frank',

sayHi(){

console.log("你好,我叫"+person.name)}

}

我们可以用直接保存了对象地址的变量获取name

这种方法称为引用:变量保存了对象的地址

6.js在每一个函数都加上一个this,用this获取目前还不知道名字的对象

7.call指定this

fn.call(this,参数1,参数2)

Eclipse中的Arguments参数是什么意思

这里的Arguments参数有两种,你看看eclipse里面。

上面一种是programe Arguments,意思是你的程序运行时要用到的参数。这个参数将放到main函数的args[]数组中。如果你在程序中用这个数组的话就有用,不用这个数组的话,就没有用。这个参数也就是我们在DOS里运行时,的那个命令行参数如命令:java first abc.这个abc就是参数。

下面的那个是VM Arguments,意思是java虚拟机的参数。如填上这个:-version的话就会输出jDK的版本信息。这个虚拟机的参数还有很多可以在DOS里输出java来查看

在java中,arguments是什么意思

String[] arguments 声明了一个String 对象数组。

这个数组中保存着来自于命令行的程序参数。

arguments[0] arguments[1]分别代表着第一个参数和第二个参数。

比如,有一个类名为Egclass.class

c:\java Egclasss.class Arg0 Arg1

英语parameter和argument作为参数的意思区别是什么?

英语parameter和argument作为参数的意思区别:

1、释义不同。parameter是指决定因素;规范;范围,argument是指争论;争吵;争辩;辩论;论据;理由;论点。

2、 参数指向不同。parameter是指函数定义中参数,而argument指的是函数调用时的实际参数。

3、对应中文术语不同。parameter=形参(formal parameter), argument=实参(actual parameter)。

4、用法不同。在不很严格的情况下,现在二者可以混用,一般用argument,而parameter则比较少用。

5、在方法选择上不同。例如:

While defining method, variables passed in the method are called parameters.

当定义方法时,传递到方法中的变量称为参数。

While using those methods, values passed to those variables are called arguments.

当调用方法时,传给变量的值称为引数。(有时argument被翻译为“引数“)

(责任编辑:IT教学网)

更多

推荐Flash actionscript文章