JS 怎么把函数的参数(未知个数)传递给另一个函数

JavaScript023

JS 怎么把函数的参数(未知个数)传递给另一个函数,第1张

无办法直接做到这一点,不过可以采用其他方法实现,例如:首先,定义被调用函数的参数为va_list类型,同时在调用函数中将可变长参数列表转换为va_list,这样就可以进行变长参数的传递了。看如下所示:

void subfunc (char *fmt, va_list argp)

{

...

arg = va_arg (fmt, argp)/* 从argp中逐一取出所要的参数 */

...

}

void mainfunc (char *fmt, ...)

{

va_list argp

va_start (argp, fmt)/* 将可变长参数转换为va_list */

subfunc (fmt, argp)/* 将va_list传递给子函数 */

va_end (argp)

...

}

这样就OK了!

首先明确一下,js里面没有指针这个说法,只有引用。所以应该是js如何传递函数的引用的。

function fu(){}

这里fu就是一个函数的引用变量,而fu()则是这个函数。

var n=fu()

这是把这个函数给了n,即n也是fu()这个函数的引用变量了,他可以访问fu()里面的东西。

var n=fu;

这个属于函数的引用的传递,也表示n指向了fu()函数,但是区别是,n此时不会解析函数,而上面则会开始解析函数fu()。