-
首先,定义foo方法如下:
function foo(a, b){ console.log(a+b); }此时由于js不要求函数传入的参数和函数定义的参数完全对应,数量也可以不一样,因此我们可以这样传:
foo(1, 2, 3, 4);
foo(1);
对于这种参数不一定的情况,我们可以通过arguments关键字来获取所有的参数,arguments是类似于数组但结构是map的对象,里面存放的是参数索引-参数的值的映射关系,我们可以遍历得到:
for (let i = 0; i < arguments.length; i++) {
console.log(arguments[i]);
}
不过,每次都得通过这样的方式获取所有的参数,很不方便,那么有没有一种方式,让我们方便的获取哪些除了必须参数之外的不定参数呢? rest参数
ES6最新引入了rest参数,它就是来表示形参中,除了必须参数之外的所有参数,此时我们这样定义函数foo:
function foo(a,b, ...rest){
//use a,b
console.log(rest);
}
由于rest本身是个数组,所以我们可以获取里面的参数。另外,如果连必须参数都没有传递够,那么它就是空数组。
fun参数数量处理
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- 如何控制alert中的换行?\n alert(“p\np”); 请编写一个JavaScript函数 parseQu...