ES9(2018)Object Rest & Spread

Posted 优小U

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ES9(2018)Object Rest & Spread相关的知识,希望对你有一定的参考价值。

前面讲到 function 的 rest剩余参数和spread扩展运算符,ES9中新增Object的 Rest & Spread 方法:

const input = {
  a: 1,
  b: 2
}

const output = {
  ...input,
  c: 3
}

console.log(output) // {a: 1, b: 2, c: 3}

这块代码展示了 spread 语法,可以把 input 对象的数据都拓展到 output 对象,这个功能很实用,比如在vue中我们经常用它来合并路由对象。

我们再来看下 Object rest 的示例:

const input = {
  a: 1,
  b: 2,
  c: 3
}

let { a, ...rest } = input

console.log(a, rest) // 1 {b: 2, c: 3}

当对象 key-value 不确定的时候,把必选的 key 赋值给变量,用一个变量收敛其他可选的 key 数据,这在之前是做不到的。

以上是关于ES9(2018)Object Rest & Spread的主要内容,如果未能解决你的问题,请参考以下文章

ES9常用新语法

ES9常用新语法

ES9(2018)for await...of

ES9(2018)RegExp扩展

ES9(2018)String 扩展 标签模板里字符串转义

ES9(2018)Promise.prototype.finally()