🎊 JavaScript函数进阶(2)——函数传入多个参数与 Spread 语法

JavaScript函数进阶(2)——函数传入多个参数与 Spread 语法

Rest 参数:

基本构造:

...变量名

介绍:

无论函数是如何定义的,通过定义Rest来定义传入的参数,你都可以在调用它时传入任意数量的参数。

举例(计算多个数之和):

function Sum(...a){

var ans=0;

for (let num of a) ans += num;

return ans;

}

console.log(Sum(1,2,3,4,5,6));

补充:

代码:

let a of b

解释:

从b中依次取值并将值赋给a,知道b中的值取完

arguments变量:

介绍:

arguments 是一个特殊类数组对象可以在函数中被访问,该对象以参数在参数列表中的索引作为键,存储所有参数。【注:尽管 arguments 是一个类数组,也是可迭代对象,但它终究不是数组。它不支持数组方法,因此我们不能调用 arguments.map(...) 等方法。(当我们需要这些功能时,最好使用 rest 参数)】

举例:

function Sum(){

var ans=0;

for(var i=0;i

ans+=arguments[i];

}

return ans;

}

console.log(Sum(1,2,3,4,5,6));

Spread语法:

介绍:

此语法(与Rest类似)与上方(Rest)的效果是完全相反的(上面的效果是将多个变量转化为数组,而Spread是将一个数组拆分为多个数)

举例:

let a=[3, 5, 1];

console.log(Math.max(...a));

补充:

...的辨析:

(1)当出现...时,不是Rest,就是Spread

(2)若 ... 出现在函数参数列表的最后,那么它就是 rest 参数,它会把参数列表中剩余的参数收集到一个数组中。

(3)若 ... 出现在函数调用或类似的表达式中,那它就是 spread 语法,它会把一个数组展开为列表。

🎁 相关推荐

精准吃鸡志在必得 《荒野行动》新枪械详解
🎯 365bet手机

精准吃鸡志在必得 《荒野行动》新枪械详解

📅 08-12 👀 2906
服的解释
🎯 365足球规则

服的解释

📅 06-27 👀 1327
华为 畅享7S(2017年12月上市)
🎯 365bet手机

华为 畅享7S(2017年12月上市)

📅 07-31 👀 330