在 JavaScript 的 ES6 版本中引入了 Rest 和 Spread 语法,能够使我们更简便地操作函数参数和数组。而在 ES9 中,这些语法又被增强了,可以更好地应用于函数编程中。
Rest 语法
Rest 语法可以将一些参数组合成一个数组。在函数的形参中,以三个点(...
)表示 Rest 语法。
-------- --------------- - ------ --------------------- ----- -- ---- - ------ - ------------------ -- -- -- ---- -- --
在上述代码中,我们可以看到在函数的参数中以 ...numbers
形式来表示 Rest 语法,这样就能够接受多个参数并组成一个数组。在函数体内我们使用了 reduce
方法来将数组进行求和运算。
Spread 语法
Spread 语法与 Rest 语法正好相反,它可以将数组展开成单个参数。在函数调用时,以三个点(...
)表示 Spread 语法。
-------- -------------------- --------- - ------------------ ------------ -------------- - ----- -------- - -------- ------- ----------------------- -- ----- ---- ---
在上述代码中,我们可以看到使用 Spread 语法将数组展开为两个单独的参数。调用 printName
函数时,我们使用了 ...fullName
语法来展开数组中的元素作为函数参数。
Rest 和 Spread 完美搭档
Rest 和 Spread 语法不仅可以独立使用,还可以一起使用。Rest 语法将参数打包进数组中,而 Spread 语法可以将数组展开成参数。
-------- --------------------- ---------- - ------ ------------------------------ - ----- ---- - --- -- --- ----- ---- - --- -- --- --------------------------- ----- ------- -- -----------
在上述代码中,我们可以看到 Rest 和 Spread 语法一起使用的效果。joinArrays
函数可以接受多个数组作为参数,并将它们连接起来,每个数组之间使用分隔符分开。
需要注意的是,Rest 参数必须是函数的最后一个参数,否则会报错。
总结
通过本文,我们学会了如何使用 Rest 和 Spread 语法操作函数,以及如何将它们一起使用。Rest 和 Spread 语法可以使我们更加便利地操作函数和数组,将它们熟练运用到函数编程中,可以提高代码的可读性和效率。
示例代码:https://codepen.io/cjsx/pen/ExgEezV
来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/64670fbf968c7c53b077793b