当前位置:首页 > 科技  > 软件

Js ES6扩展运算符(spread)和剩余运算符(rest)

来源: 责编: 时间:2024-02-29 14:44:05 291观看
导读Js运算符...Spread 和 Rest 是 ES6 Javascript 提供的两个功能,分别主要用于解构和函数参数处理。Spread 从可迭代对象(如数组、字符串或对象)中获取元素并将它们分散到各个部分。这就像将一副纸牌铺在桌子上一样。另一

Js运算符...

EBo28资讯网——每日最新资讯28at.com

Spread 和 Rest 是 ES6 Javascript 提供的两个功能,分别主要用于解构和函数参数处理。Spread 从可迭代对象(如数组、字符串或对象)中获取元素并将它们分散到各个部分。这就像将一副纸牌铺在桌子上一样。EBo28资讯网——每日最新资讯28at.com

另一方面,Rest 收集可迭代对象的剩余元素,从而更容易处理可变参数或元素。这就像游戏结束后将分散的纸牌重新聚集在一起。让我们详细了解它们。EBo28资讯网——每日最新资讯28at.com

了解扩展运算符

EBo28资讯网——每日最新资讯28at.com

在上图中,你看到了这四只可爱的猫——生日猫、学习猫、睡觉猫和工作猫。现在,将它们想象成聚集成一个阵列。使用 Spread Operator — 您可以将这些猫分散成单独的猫。EBo28资讯网——每日最新资讯28at.com

这是扩展运算符的简单代码示例EBo28资讯网——每日最新资讯28at.com

图片EBo28资讯网——每日最新资讯28at.com

JavaScript 中的展开运算符将可迭代对象(如数组、字符串或对象)的元素展开或解包为可在新数组/对象中使用的单个元素。EBo28资讯网——每日最新资讯28at.com

让我们看看展开运算符的用例。EBo28资讯网——每日最新资讯28at.com

1. 克隆阵列

EBo28资讯网——每日最新资讯28at.com

在上面的代码中,克隆数组使用扩展运算符复制原始数组。现在,您有两个相同的数组。EBo28资讯网——每日最新资讯28at.com

2. 函数参数列表

EBo28资讯网——每日最新资讯28at.com

在上面的代码中,...joinedArray参数允许您将任意数量的具有各种属性的附加详细信息传递给函数。EBo28资讯网——每日最新资讯28at.com

3. 数组文字

EBo28资讯网——每日最新资讯28at.com

在上面的代码中,扩展运算符用于allBooks通过组合classics数组中的元素、modernBooks使用扩展运算符的数组并添加 book 来创建一个新数组。EBo28资讯网——每日最新资讯28at.com

4. 对象文字

EBo28资讯网——每日最新资讯28at.com

在上面的代码中,扩展运算符updatedBook通过添加新的键值对(genre和year)来创建一个对象,同时保留原始对象的现有属性book。EBo28资讯网——每日最新资讯28at.com

5. 合并数组

EBo28资讯网——每日最新资讯28at.com

在上面的代码中,扩展运算符 ( ...) 用于创建一个名为 的新数组mergedArray。array1它本质上是从和中获取所有元素array2,并将它们放入提供给您的新数组中,即 mergedArray。EBo28资讯网——每日最新资讯28at.com

扩展运算符就像数组的复印机。它有助于制作精确的副本,因此,如果您更改一个副本,另一个副本将保持不变。EBo28资讯网——每日最新资讯28at.com

了解 Rest 运算符

EBo28资讯网——每日最新资讯28at.com

在上图中,你可以再次看到这四只可爱的猫——生日猫、学习猫、睡觉猫和工作猫,但这一次,它们作为单独的猫分散开来。使用 Rest Operator,我们可以将这些猫聚集并捆绑成一个舒适的猫群。EBo28资讯网——每日最新资讯28at.com

这是扩展运算符的简单代码示例EBo28资讯网——每日最新资讯28at.com

EBo28资讯网——每日最新资讯28at.com

JavaScript 中的剩余运算符将可迭代对象(如数组、字符串或对象)的剩余元素聚集或收集到单个变量中。EBo28资讯网——每日最新资讯28at.com

现在,让我们探讨一下 Rest 运算符的用例。EBo28资讯网——每日最新资讯28at.com

1. 收集函数参数

EBo28资讯网——每日最新资讯28at.com

在上面的代码中,该calculateTotal函数使用带有参数值的剩余运算符...values来接受并将任意数量的值存储在数组中。然后它使用循环来计算总和。EBo28资讯网——每日最新资讯28at.com

Rest 运算符简化了函数中变量参数的处理,使您的代码更干净、更灵活。EBo28资讯网——每日最新资讯28at.com

2. 解构数组

EBo28资讯网——每日最新资讯28at.com

在上面的代码中,...rest参数将剩余元素收集到一个名为 的数组中,rest 从索引 2 开始。EBo28资讯网——每日最新资讯28at.com

在扩展和剩余之间选择:EBo28资讯网——每日最新资讯28at.com

Spread 和 Rest 之间的选择取决于用例。EBo28资讯网——每日最新资讯28at.com

使用 Spread 来传播可迭代对象:EBo28资讯网——每日最新资讯28at.com

  • 克隆数组、合并数组和复制对象。
  • 当你想毫不费力地传播可迭代的内容时。

使用 Rest 来收集可迭代对象:EBo28资讯网——每日最新资讯28at.com

  • 处理可变函数参数和解构数组。
  • 当您需要收集和管理数量可变的元素时。

综上所述:

Spread 和 Rest 运算符是 JavaScript 的强大功能,每个运算符都具有独特的功能。EBo28资讯网——每日最新资讯28at.com

了解何时传播和聚集可确保流畅高效的编码体验。EBo28资讯网——每日最新资讯28at.com

因此,无论您是使用 Spread 运算符克隆数组,还是使用 Rest 运算符处理变量参数,JavaScript 中的这些功能都会使您的代码变得简单且灵活。EBo28资讯网——每日最新资讯28at.com

本文链接:http://www.28at.com/showinfo-26-75372-0.htmlJs ES6扩展运算符(spread)和剩余运算符(rest)

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。邮件:2376512515@qq.com

上一篇: 53 道 JavaScript 前端基础面试题

下一篇: .NET微服务架构实战:从概念到部署的全方位指南

标签:
  • 热门焦点
  • K60 Pro官方停产 第三方瞬间涨价

    虽然没有官方宣布,但Redmi的一些高管也已经透露了,Redmi K60 Pro已经停产且不会补货,这一切都是为了即将到来的K60 Ultra铺路,属于厂家的正常操作。但有意思的是该机在停产之后
  • K6:面向开发人员的现代负载测试工具

    K6 是一个开源负载测试工具,可以轻松编写、运行和分析性能测试。它建立在 Go 和 JavaScript 之上,它被设计为功能强大、可扩展且易于使用。k6 可用于测试各种应用程序,包括 Web
  • 十个可以手动编写的 JavaScript 数组 API

    JavaScript 中有很多API,使用得当,会很方便,省力不少。 你知道它的原理吗? 今天这篇文章,我们将对它们进行一次小总结。现在开始吧。1.forEach()forEach()用于遍历数组接收一参
  • 量化指标是与非:挽救被量化指标扼杀的技术团队

    作者 | 刘新翠整理 | 徐杰承本文整理自快狗打车技术总监刘新翠在WOT2023大会上的主题分享,更多精彩内容及现场PPT,请关注51CTO技术栈公众号,发消息【WOT2023PPT】即可直接领取
  • 之家push系统迭代之路

    前言在这个信息爆炸的互联网时代,能够及时准确获取信息是当今社会要解决的关键问题之一。随着之家用户体量和内容规模的不断增大,传统的靠"主动拉"获取信息的方式已不能满足用
  • 只需五步,使用start.spring.io快速入门Spring编程

    步骤1打开https://start.spring.io/,按照屏幕截图中的内容创建项目,添加 Spring Web 依赖项,并单击“生成”按钮下载 .zip 文件,为下一步做准备。请在进入步骤2之前进行解压。图
  • 品牌洞察丨服务本地,美团直播成效几何?

    来源:17PR7月11日,美团App首页推荐位出现“美团直播”的固定入口。在直播聚合页面,外卖“神枪手”直播间、美团旅行直播间、美团买菜直播间等均已上线,同时
  • 阿里瓴羊One推出背后,零售企业迎数字化新解

    作者:刘旷近年来随着数字经济的高速发展,各式各样的SaaS应用服务更是层出不穷,但本质上SaaS大多局限于单一业务流层面,对用户核心关切的增长问题等则没有提供更好的解法。在Saa
  • 半导体需求下滑 三星电子DS业务部门今年营业亏损预计超10万亿韩元

    7月17日消息,据外媒报道,去年下半年开始的半导体需求下滑,影响到了三星电子、SK海力士、英特尔等诸多厂商,营收明显下滑,部分厂商甚至出现了亏损。作为
Top