在ES6中使用扩展语法有什么好处?它与rest语法有什么不同?

栏目: JavaScript · 发布时间: 5年前

内容简介:在函数模式编码时ES6的spread语法是非常有用的,因为我们可以轻松地创建数组或对象的副本,而无需诉诸Object.create,slice或库函数。Redux和rx.js项目中经常使用此语言功能。ES6的rest语法提供了一个简写,用于包含要传递给函数的任意数量的参数。它就像扩展语法的反转,将数据和填充到数组中而不是解压缩数据数组,它可以在函数参数中工作,也可以在数组和对象解构分配中工作。来源:

在函数模式编码时ES6的spread语法是非常有用的,因为我们可以轻松地创建数组或对象的副本,而无需诉诸Object.create,slice或库函数。Redux和rx.js项目中经常使用此语言功能。

function putDookieInAnyArray(arr) {
  return [...arr, 'dookie'];
}

const result = putDookieInAnyArray(['I', 'really', "don't", 'like']); // ["I", "really", "don't", "like", "dookie"]

const person = {
  name: 'Todd',
  age: 29,
};

const copyOfTodd = { ...person };

ES6的rest语法提供了一个简写,用于包含要传递给函数的任意数量的参数。它就像扩展语法的反转,将数据和填充到数组中而不是解压缩数据数组,它可以在函数参数中工作,也可以在数组和对象解构分配中工作。

function addFiveToABunchOfNumbers(...numbers) {
  return numbers.map(x => x + 5);
}

const result = addFiveToABunchOfNumbers(4, 5, 6, 7, 8, 9, 10); // [9, 10, 11, 12, 13, 14, 15]

const [a, b, ...rest] = [1, 2, 3, 4]; // a: 1, b: 2, rest: [3, 4]

const { e, f, ...others } = {
  e: 1,
  f: 2,
  g: 3,
  h: 4,
}; // e: 1, f: 2, others: { g: 3, h: 4 }

来源: github.com/yangshun


以上所述就是小编给大家介绍的《在ES6中使用扩展语法有什么好处?它与rest语法有什么不同?》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Building Websites with Joomla!

Building Websites with Joomla!

H Graf / Packt Publishing / 2006-01-20 / USD 44.99

This book is a fast paced tutorial to creating a website using Joomla!. If you've never used Joomla!, or even any web content management system before, then this book will walk you through each step i......一起来看看 《Building Websites with Joomla!》 这本书的介绍吧!

CSS 压缩/解压工具
CSS 压缩/解压工具

在线压缩/解压 CSS 代码

URL 编码/解码
URL 编码/解码

URL 编码/解码

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具