zoukankan      html  css  js  c++  java
  • js 中连续的 3 个点 three dots (...) in javascript

    这个叫扩展运算符
    https://dev.to/sagar/three-dots---in-javascript-26ci

    5 种用法

    1

    function myFunc(...[x, y, z]) {
      return x * y* z;
    }
    
    myFunc(1)          // NaN
    myFunc(1, 2, 3)    // 6
    myFunc(1, 2, 3, 4) // 6 (fourth parameter is not destructured)
    

    2

    function myFunc(x, y, ...params) { // used rest operator here
      console.log(x);
      console.log(y);
      console.log(params);
    }
    
    var inputs = ["a", "b", "c", "d", "e", "f"];
    myFunc(...inputs); // used spread operator here
    // "a"
    // "b"
    // ["c", "d", "e", "f"]
    

    3

    const featured = ['Deep Dish', 'Pepperoni', 'Hawaiian'];
    const specialty = ['Meatzza', 'Spicy Mama', 'Margherita'];
    
    const pizzas = [...featured, 'veg pizza', ...specialty];
    
    console.log(pizzas); // 'Deep Dish', 'Pepperoni', 'Hawaiian', 'veg pizza', 'Meatzza', 'Spicy Mama', 'Margherita'
    

    4

    var obj1 = { foo: 'bar', x: 42 };
    var obj2 = { foo: 'baz', y: 13 };
    
    var clonedObj = { ...obj1 };
    // Object { foo: "bar", x: 42 }
    
    var mergedObj = { ...obj1, ...obj2 };
    // Object { foo: "baz", x: 42, y: 13 }
    

    5

    [a, b, ...rest] = [10, 20, 30, 40, 50];
    console.log(rest); // [30,40,50]
    
    let {a, b, ...rest} = {a: 10, b: 20, c: 30, d: 40}
    console.log(a); // 10 
    console.log(b); // 20 
    console.log(rest); // { c: 30, d: 40 }
    
  • 相关阅读:
    (转)消息队列 Kafka 的基本知识及 .NET Core 客户端
    Neo4j学习笔记
    科技论文推荐系统
    下载pubmed数据
    杂项
    Scrapy 知乎验证码
    Scrapy 爬取网站文章
    爬虫基础知识
    Django linux uWsgi Nginx 部署
    DocumentSimilarity
  • 原文地址:https://www.cnblogs.com/hangj/p/11594157.html
Copyright © 2011-2022 走看看