亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何使用es6函數之rest參數

發布時間:2020-08-03 09:45:43 來源:億速云 閱讀:186 作者:小豬 欄目:web開發

這篇文章主要講解了如何使用es6函數之rest參數,內容清晰明了,對此有興趣的小伙伴可以學習一下,相信大家閱讀完之后會有幫助。

es6引入rest參數(形式為 …變量名),用于獲取函數的多余參數,這樣就不需要使用arguments對象了,rest參數搭配的變量是一個數組,該變量將多余的參數放入數組中。

function add (...values) {
 let sum = 0;
 for (var val of values) {
 sum += val
 }
 return sum
}

add(2, 3, 5) // 10

上面代碼的add函數是一個求和函數,利用rest參數,可以向該函數傳入任意數目的參數。

下面是一個rest參數代替arguments變量的例子。

// arguments變量的寫法
function sortNumbers() {
 return Array.prototype.slice.call(arguments).sort()
}

// rest參數的寫法
const sortNumbers = (...numbers) => numbers.sort()

上面代碼的兩種寫法,比較后可以發現,rest參數的寫法更自然也更簡潔。

arguments對象不是數組,而是一個類似數組的對象。所以為了使用數組的方法,必須使用Array.prototype.slice.call先將其轉為數組。rest參數就不存在這個問題,它就是一個真正的數組,數組特有的方法都可以使用。下面是一個利用rest參數改寫數組push方法的例子。

function push(array, ...items) {
 items.forEach(item => {
 array.push(item)
 })
}

var a = []
push(a, 1, 2, 3)

注意,rest參數之后不能再有其他參數(即只能是最后一個參數),否則會報錯

function f (a, ...b, c) {
 // ..
} // 報錯

函數的length屬性,不包括rest參數。

(function (a) {}).length // 1
(function (...a) {}).length // 0
(function (a, ...b) {}).length // 1

看完上述內容,是不是對如何使用es6函數之rest參數有進一步的了解,如果還想學習更多內容,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

东海县| 沙洋县| 沁水县| 盐池县| 宝清县| 阿城市| 阿尔山市| 浦城县| 通州区| 新宾| 岑巩县| 福安市| 正宁县| 神池县| 枣庄市| 眉山市| 南开区| 双城市| 扎鲁特旗| 罗定市| 舞钢市| 安丘市| 贵港市| 田东县| 清丰县| 新巴尔虎右旗| 东源县| 龙泉市| 康保县| 兴仁县| 黑山县| 通海县| 杭锦旗| 广汉市| 永和县| 竹溪县| 隆德县| 滦平县| 驻马店市| 宁乡县| 镇远县|