zoukankan      html  css  js  c++  java
  • 记录一下ES6扩展运算符(三点运算符)...的用法

    该记录源于segmentfaul网友的评论,特意感谢!

     ...运算符用于操作数组,有两种层面

    1. 第一个叫做 展开运算符(spread operator),作用是和字面意思一样,就是把东西展开。可以用在array和object上都行。
    比如:

     
    1. let a = [1,2,3];  
    2. let b = [0, ...a, 4]; // [0,1,2,3,4]  
    3.   
    4. let obj = { a: 1, b: 2 };  
    5. let obj2 = { ...obj, c: 3 }; // { a:1, b:2, c:3 }  
    6. let obj3 = { ...obj, a: 3 }; // { a:3, b:2 }  


    2. 第二个,第三个叫做 剩余操作符(rest operator),是解构的一种,意思就是把剩余的东西放到一个array里面赋值给它。一般只针对array的解构,其他的没见过。。。
    比如: 

     
    1. let a = [1,2,3];  
    2. let [b, ...c] = a;  
    3. b; // 1  
    4. c; // [2,3]  
    5.   
    6. // 也可以  
    7. let a = [1,2,3];  
    8. let [b, ...[c,d,e]] = a;  
    9. b; // 1  
    10. c; // 2  
    11. d; // 3  
    12. e; // undefined  
    13.   
    14. // 也可以  
    15. function test(a, ...rest){  
    16.   console.log(a); // 1  
    17.   console.log(rest); // [2,3]  
    18. }  
    19.   
    20. test(1,2,3)  

    还有类似的

      1. let array = [1, 2, 3, 4, 5];  
      2. const { x, y, ...z } = array;  
      3. // 其中z=[3, 4, 5],注意如果由于array的length不足以完成析构,则会导致z为[]  
      4. 对象:  
      5. let obj = { name: 'zhangsan', age: 30, city: 'shenzhen' };  
      6. const {name, ...others} = obj;  
      7. console.log(name); // 'zhangsan'  
      8. console.log(others); // {age: 30, city: 'shenzhen'}  
      9. 转:https://blog.csdn.net/chauncywu/article/details/73060918
  • 相关阅读:
    数组指针的一个易错点
    jQuery on()方法
    php 前一天或后一天的日期
    用jQuery监听浏览器窗口的变化
    jquery获取json对象中的key小技巧
    JQuery操作元素的属性与样式及位置
    用JQuery操作元素的style属性
    如何删除jsPlumb连接
    jsPlumb.jsAPI阅读笔记(官方文档翻译)
    Jquery empty() remove() detach() 方法的区别
  • 原文地址:https://www.cnblogs.com/susan-home/p/8980115.html
Copyright © 2011-2022 走看看