中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

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

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

ES6中剩余參數的案例分析

發布時間:2020-12-08 10:47:19 來源:億速云 閱讀:171 作者:小新 欄目:web開發

這篇文章主要介紹了ES6中剩余參數的案例分析,具有一定借鑒價值,需要的朋友可以參考下。希望大家閱讀完這篇文章后大有收獲。下面讓小編帶著大家一起了解一下。

概述

剩余參數將沒有對應形參的參數聚合成一個數組

語法

function(a, b, ...theArgs) {
}

只聚合未對應形參參數

剩余參數只會將沒有對應形參的參數聚合成一個數組, 而arguments則是包含了所有的參數。

function add(a, b, ...theArgs) {
    return {rest: theArgs, arguments}
}
add() 
// {rest: [undefined, undefined, []], arguments: Arguments(0)}
add(1) 
// {rest: [1, undefined, []], arguments: Arguments(1)}
add(1, 2) 
// {rest: [1, 2, []], arguments: Arguments(2)}
add(1, 2, 3, 4, 5) 
// {rest: [1, 2, [3, 4, 5]], arguments: Arguments(5)}

剩余參數是數組

剩余參數始終是一個數組,而不像arguments是一個偽數組

function add(...theArgs) {
    console.log(Array.isArray(theArgs))
    theArgs.forEach((a)=>console.log(a))
    console.log(Array.isArray(arguments))
    Array.prototype.slice.call(arguments, add.length).forEach((a)=>console.log(a)) // 轉化成數組
}
add(1,2,3) // true 1 2 3 false 1, 2, 3, 4

解構剩余參數

function add(...[a, b, c]){
    return a + b +c
}
add(1, 2, 3) // 6
add(1, 2, 3) // 6

使用babel翻譯

function add(...num){
  return num.reduce((n1,n2)=>n1+n2)
}

翻譯后

function add() {
  for (var _len = arguments.length, num = Array(_len), _key = 0; _key < _len; _key++) {
    num[_key] = arguments[_key];
  }

  return num.reduce(function (n1, n2) {
    return n1 + n2;
  });
}

感謝你能夠認真閱讀完這篇文章,希望小編分享ES6中剩余參數的案例分析內容對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,遇到問題就找億速云,詳細的解決方法等著你來學習!

向AI問一下細節

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

AI

綦江县| 深水埗区| 托克逊县| 余庆县| 鄄城县| 鹤壁市| 湖州市| 搜索| 进贤县| 海兴县| 酒泉市| 丰顺县| 健康| 方城县| 隆昌县| 元氏县| 荆门市| 德昌县| 岳阳市| 大城县| 宜兴市| 伊春市| 新建县| 昆山市| 达拉特旗| 出国| 贺兰县| 伊吾县| 托克逊县| 灵川县| 潮安县| 靖江市| 运城市| 措勤县| 威远县| 南丹县| 临猗县| 邯郸县| 西华县| 革吉县| 徐州市|