扩展运算符。
对数组和对象而言,就是将运算符后面的变量里东西每一项拆下来。

(一)操作数组

// 1.把数组中的元素孤立起来
let iArray = ['1', '2', '3'];
console.log(...iArray);
// 打印结果  1 2 3// 2.在数组中添加元素
let iArray = ['1', '2', '3'];
console.log(['0', ...iArray, '4']);
// 打印结果  ["0", "1", "2", "3", "4"]// 3.在数组中删除元素(取出一个元素)
// 与结构赋值的结合
// 如果将扩展运算符用于数组赋值,只能放在参数的最后一位,否则会报错。
const [first, ...rest] = [1, 2, 3, 4, 5];
console.log(first);  // 打印结果 1
console.log([...rest]);  // 打印结果 [2, 3, 4, 5]const [one, ...last] = ["foo"];
console.log(one);  // 打印结果 foo
console.log([...last]);  // 打印结果 []// 4.数组的合并
// ES6 的写法
var arr1 = [0, 1, 2];
var arr2 = [3, 4, 5];
arr1.push(...arr2);
console.log(arr1); // 打印结果 [0, 1, 2, 3, 4, 5]
// 推荐使用写法
console.log([...arr1, ...arr2]); // 打印结果 [0, 1, 2, 3, 4, 5]// 5.将字符串转成数组
let iString = 'zhongguoren';
console.log([...iString]); // 打印结果 ["z", "h", "o", "n", "g", "g", "u", "o", "r", "e", "n"]// 6.Map 和 Set 结构, Generator 函数
let map = new Map([[1, 'one'],[2, 'two'],[3, 'three'],
]);
let arr = [...map.keys()];
console.log(arr);
// 打印结果 [1, 2, 3]// 7.当做参数传递和直接传数组的区别
iClick4() {let iArray = ['1', '2', '3'];//注意传的时候,就要三个点this.hanshu(...iArray);
},
hanshu(...iArray) {let ooo = 1;console.log(...iArray);// 打印结果 1 2 3
},// 8.求出最大值
let iArray = [1, 2, 3, 99, 44, 66, 21, 85, 77];
let ooo = Math.max(...iArray);
console.log(ooo);
// 打印结果 99// 9.如果对没有iterator接口的对象,使用扩展运算符,将会报错。
let obj = {name: 'zhh',age: '20'
}
console.log([...obj]);

(二)操作对象

// 1.添加一个属性
let a = {age: 18, id: 10};
let c = {name: 'zhh', ...a};
console.log(c);
// 打印结果  {name: "zhh", age: 18, id: 10}// 2.修改一个属性
let a = {name: 'zhh', age: 18, id: 10};
let c = {...a, name: 'zhh1'};
console.log(c);
// 打印结果  {name: "zhh1", age: 18, id: 10}// 3.删除一个属性(拿出属性或者对象)
let a = {name: 'zhh', age: 18, id: 10};
let {name, ...c} = a;
console.log(name, c);
// 打印结果 zhh {age: 18, id: 10}

Vue中...(三个点)的意思及作用(扩展运算符)相关推荐

  1. vue data为什么是函数_由 Vue 中三个常见问题引发的深度思考

    (给前端大全加星标,提升前端技能) 作者: 前端序 公号 / SimonWoo (本文来自作者投稿) 前言 工作中我们通过搜索引擎或者官方文档很容易就会知道一个语法怎么使用,但是你知道其中的原理吗?我 ...

  2. VUE 中 keep-alive 的 --是什么-- 使用场景-- 作用-- 新增属性--动态组件--理解

    KBK对keep-alive的一些见解(有不对之处,尽请告知,嘻嘻) Keep-alive是什么 是Vue的内置组件 包裹动态组件时,会缓存不活动的组件实例,而不是销毁它们. Keep-alive的使 ...

  3. python三个点是什么意思_Python 3 中 ... 三个点的省略号的作用

    表示函数没有实现任何代码,跟 pass 的作用类似 >>> def some_function(): ... ... ... >>> some_function() ...

  4. vue中修改Element ui样式不起作用

    公司做的一个后台系统,由于Elemen ui是响应式的,在小屏笔记本中,一行两列的表单会自动变成一行一列,这样就很不美观了,由于是后台系统,当时也没考虑适配问题. 老总 地表最强的电脑 运行了一下,当 ...

  5. 「后端小伙伴来学前端了」关于 Vue中 Slot 插槽的使用,实用且也是组件中必会的一个知识,另外也可以实现父子组件之间通信

    前言 插槽可以说是 Vue 中非常重要的一部分吧,在我学习和练习的过程中,当组件搭配着插槽一起使用的时候,会发挥的更好一些.更多时候也会更加方便. 今天介绍Vue中三种插槽吧:默认插槽.具名插槽.作用 ...

  6. JS中出现三个点(...)的作用是什么

    三个点(...)真名叫扩展运算符,是在ES6中新增加的内容,它可以在函数调用/数组构造时,将数组表达式或者string在语法层面展开:还可以在构造字面量对象时将对象表达式按照key-value的方式展 ...

  7. js ... es6中三个点是什么意思 真名叫扩展运算符

    前言:求真 求实 东西实现了 居然不知道怎么做完的 有点恐怖 背景 js去重 let inCmpGroup = [...new Set(this.selectedData.map(x => x. ...

  8. JS中三个点(...)

    我们在看js代码时经常会出现(-)三个点的东西,它究竟是什么意思?又有何用处? 下面我就给大家分享一下三个点的那些事 什么意思? 三个点(-)真名叫扩展运算符,是在ES6中新增加的内容,它可以在函数调 ...

  9. JavaScript中三个点(...)的意思

    我们在看js代码时经常会出现(-)三个点的东西,三个点(-)真名叫扩展运算符,是在ES6中新增加的内容,它可以在函数调用/数组构造时,将数组表达式或者string在语法层面展开:还可以在构造字面量对象 ...

最新文章

  1. dubbo基础使用入门
  2. 软件工程 --第七章 -- 实现(未完)
  3. ubuntu mysql5.6_ubuntu安装mysql5.6
  4. Flutter打包安卓提示请使用 -Xlint:deprecation 重新编译、请使用 -Xlint:unchecked 重新编译
  5. (45)css面试题集锦二
  6. gvim 命令行粘贴_vi/vim复制粘贴命令
  7. 多线多IP的服务器配置
  8. 解决kaggle邮箱验证不能confirm的问题
  9. javamailsender注入失败_springboot拦截异常信息发送邮件提醒
  10. IDL | 实验六、ENVI波段运算与功能扩展
  11. 微信小程序 获取cookie 以及设置 cookie
  12. plc仿真实训软件_博途STEP7仿真软件与真实PLC的区别
  13. 电感感应电压公式推导
  14. java导出出行客人到Excel
  15. CVE-2015-5254(ActiveMQ 反序列化漏洞)复现
  16. 圆方树学习笔记 例题 uoj30 Tourists
  17. vue多次引用组件,减少每个页面import的方法
  18. 洛谷 P1194 买礼物 (题解+代码)
  19. c++ 堆优化版dijkstra 代码实现
  20. SiteSucker

热门文章

  1. 日文键盘的中文输入法
  2. CDO基础操作(一):用CDO进行数据查询
  3. matlab单纯形法编程求解,单纯形法的matlab实现
  4. 《吊打面试官》系列-ArrayList
  5. html5学习 - canvas画图和清除图片
  6. 3天痛失7位院士!今年已痛别48位两院院士
  7. 希望我讲明白了G1 GC的过程
  8. 区块链与人工智能的关系
  9. 大印文化:李万博老师《总裁演说思维》课程笔记(14)
  10. 三角形面积公式用坐标用c语言,通过三个点的坐标求出三角形面积的公式