JavaScript 中的展开和休息运算符

javascript 中的展开和休息运算符

零食故事:
假设您有一篮子零食:

const snacks = ['apple', 'banana', 'chocolate'];

现在,您想与您的朋友分享这些零食。但你不是把整个篮子都给他们,而是把每件零食都拿出来,一一递给他们:

console.log(...snacks);  // output: apple banana chocolate

…(摊开)操作符就像是把零食从篮子里拿出来摊在桌子上。您的朋友现在可以单独领取它们!

另一方面,如果你的朋友带来了更多零食,你可以使用 …(休息)运算符将它们全部收集到一个大篮子中:

function collectsnacks(...moresnacks) {  console.log(moresnacks);}collectsnacks('cookie', 'chips', 'juice');  // output: ['cookie', 'chips', 'juice']

在这里,…操作员将所有零食收集到一个新篮子中。这就是剩余运算符的工作原理!

如果您是 javascript 新手,您可能遇到过两个特殊的语法元素:扩展运算符和剩余运算符。它们看起来都一样——三个点 (…)——但它们的使用方式不同。让我们用简单的例子来分解它们!

1。什么是展开运算符?
扩展运算符 (…) 用于将数组或对象扩展为单个元素。这就像将数组或对象解包到其组件中。

示例:扩展数组
假设您有一个数字数组,并且您想将它们单独传递到一个函数中。

const numbers = [1, 2, 3];console.log(...numbers);  // output: 1 2 3

您可以使用展开运算符来展开数组元素!

立即学习“Java免费学习笔记(深入)”;

示例:组合数组
如果您有两个数组并想要合并它们,扩展运算符会让这一切变得简单:

const array1 = [1, 2, 3];const array2 = [4, 5, 6];const mergedarray = [...array1, ...array2];console.log(mergedarray);  // output: [1, 2, 3, 4, 5, 6]

这就像将 array1 和 array2 中的所有元素放置到一个新数组中。

示例:复制对象
您还可以对对象使用扩展运算符:

const user = { name: "ahmed", age: 25 };const updateduser = { ...user, location: "bengaluru" };console.log(updateduser);// output: { name: "ahmed", age: 25, location: "bengaluru" }

在这里,我们从用户对象复制了属性并添加了新的属性位置。

什么是 rest 运算符?剩余运算符与扩展运算符相反。它不是扩展数组或对象,而是将多个元素收集到数组或对象中。

示例:带有剩余参数的函数
想象一下您正在编写一个带有任意数量参数的函数:

function addnumbers(...nums) {  return nums.reduce((sum, current) => sum + current, 0);}console.log(addnumbers(1, 2, 3, 4));  // output: 10

在这种情况下,剩余运算符 …nums 将所有参数收集到一个数组中,从而更容易使用多个值。

示例:休息解构
解构数组时还可以使用剩余运算符:

const [first, ...rest] = [1, 2, 3, 4];console.log(first);  // Output: 1console.log(rest);   // Output: [2, 3, 4]

这里,首先获取数组的第一个元素,剩下的将剩余元素收集到一个新数组中。

结论
展开和休息运算符是 javascript 中强大且多功能的工具。回顾一下:

spread (…) 将数组或对象扩展为单个元素。rest (…) 将多个元素收集到一个数组或对象中。

希望你理解传播和休息这两个概念,它会让你的 javascript 代码更加简洁,更容易阅读!

编码愉快:)

以上就是JavaScript 中的展开和休息运算符的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1491404.html

赞 (0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
创建强大的 XSS 多语言
上一篇 2025年12月19日 13:56:17
如何在 WordPress 网站中使用 Importmap
下一篇 2025年12月19日 13:56:33

相关推荐

  • 远程桌面失败:你的凭据不工作

    远程桌面失败:你的凭据不工作远程桌面失败:你的凭据不工作远程桌面失败:你的凭据不工作远程桌面失败:你的凭据不工作

    解决远程桌面连接失败的问题,可以尝试以下几种方法: 方法一: 首先,按Win+R快捷键,输入“secpol.msc”或“gpedit.msc”打开安全策略或组策略编辑器: 然后,找到并更改默认设置,将“仅来宾—本地用户以来宾身份验证”调整为“经典:本地用户以自己的身份验证”。 方法二: 只需调整远程…

    2026年9月26日 • 用户投稿
    100
  • Laravel框架中Pipeline的解析(代码示例)

    本篇文章给大家带来的内容是关于laravel框架中pipeline的解析(代码示例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 大家好,今天给大家介绍下Laravel框架的Pipeline。 它是一个非常好用的组件,能够使代码的结构非常清晰。 Laravel的中间件机制便是基于…

    2026年9月26日
    000
  • linux常用命令有哪些 分别是什么意思

    linux常用命令有哪些 分别是什么意思linux常用命令有哪些 分别是什么意思linux常用命令有哪些 分别是什么意思linux常用命令有哪些 分别是什么意思

    Linux 中常用的命令包括:文件和目录管理:ls、cd、mkdir、rmdir、touch文本处理:cat、grep、sed、awk、less进程管理:ps、kill、top、htop、nice网络管理:ping、traceroute、netstat、ifconfig、wget系统管理:reboo…

    2026年9月26日 • 用户投稿
    100
  • 云原生Java监控全套方案:从Micrometer到Grafana可视化看板

    云原生Java监控全套方案:从Micrometer到Grafana可视化看板云原生Java监控全套方案:从Micrometer到Grafana可视化看板云原生Java监控全套方案:从Micrometer到Grafana可视化看板云原生Java监控全套方案:从Micrometer到Grafana可视化看板

    云原生Java监控方案以Micrometer收集指标,Prometheus存储查询,Grafana实现可视化。Micrometer提供供应商中立的API,与Spring Boot Actuator集成,自动暴露JVM、HTTP等指标;通过micrometer-registry-prometheus依…

    2026年9月26日 • 用户投稿
    000
  • 夸克AI写作文靠谱吗_夸克AI写作助手效果与能力评测

    夸克AI写作文靠谱吗_夸克AI写作助手效果与能力评测夸克AI写作文靠谱吗_夸克AI写作助手效果与能力评测夸克AI写作文靠谱吗_夸克AI写作助手效果与能力评测夸克AI写作文靠谱吗_夸克AI写作助手效果与能力评测

    夸克AI写作助手在高考作文辅导中表现优异,能快速构建逻辑清晰的议论文结构,围绕“第二次呼吸”等题目提炼成长主题,分论点衔接自然;引用2024年敦煌数字化修复、马拉松真实数据等新颖素材,增强时代感与说服力;语言表达生动,善用比喻与哲理金句,避免空洞口号;实际应用中获教师认可,助力学生提升写作效率与思维…

    2026年9月26日 • 用户投稿
    100
  • Oracle数据库实例详解

    Oracle数据库实例详解Oracle数据库实例详解Oracle数据库实例详解Oracle数据库实例详解

    Oracle数据库实例详解 Oracle数据库是全球著名的关系型数据库管理系统,被广泛应用于企业级应用程序的数据存储和管理。在Oracle数据库中,数据库实例是一个重要概念,它表示一个Oracle数据库服务器进程和内存结构的集合,用于处理客户端应用程序对数据库的操作请求。在本文中,我们将详细探讨Or…

    2026年9月26日 • 用户投稿
    000
  • 抖音店铺保证金需要缴纳多少?抖店类目保证金

    抖音借助其庞大的流量与用户黏性,成为电商领域的新兴力量。众多商家选择在抖音开设店铺,期望借此拓宽销路。抖音店铺保证金自然成了商家们关注的重点。本文将围绕保证金的缴纳标准、缴纳方式、用途等展开深入分析,助力商家更全面地掌握抖音店铺保证金的相关知识。 一、抖音店铺保证金缴纳标准 1.店铺类型 抖音店铺主…

    2026年9月26日
    100
  • WPS格式文件中的宏如何安全处理_WPS宏安全管理与处理步骤

    WPS格式文件中的宏如何安全处理_WPS宏安全管理与处理步骤WPS格式文件中的宏如何安全处理_WPS宏安全管理与处理步骤WPS格式文件中的宏如何安全处理_WPS宏安全管理与处理步骤WPS格式文件中的宏如何安全处理_WPS宏安全管理与处理步骤

    首先禁用所有宏并启用通知,再检查宏来源与数字签名,对可疑文件使用沙箱环境测试,必要时清除文档宏代码,最后通过受信任位置管理合法宏运行。 如果您在打开WPS格式文件时遇到宏相关提示或安全警告,可能是文档中包含可执行的宏代码。不正确的处理可能导致恶意代码运行,威胁系统安全。以下是针对WPS文件中宏的安全…

    2026年9月26日 • 用户投稿
    100
  • sublime怎么格式化代码_Sublime Text代码格式化设置与快捷键

    sublime怎么格式化代码_Sublime Text代码格式化设置与快捷键sublime怎么格式化代码_Sublime Text代码格式化设置与快捷键sublime怎么格式化代码_Sublime Text代码格式化设置与快捷键sublime怎么格式化代码_Sublime Text代码格式化设置与快捷键

    Sublime Text通过安装HTML-CSS-JS Prettify等插件可实现代码格式化,需先安装Package Control,再通过命令面板搜索并安装插件,随后在Key Bindings中添加快捷键配置,如Ctrl+Alt+F用于格式化JS/HTML/CSS文件,保存后即可使用;注意确保文…

    2026年9月26日 • 用户投稿
    100
  • Node.js spawn 命令参数解析与 shell: true 的应用

    Node.js spawn 命令参数解析与 shell: true 的应用Node.js spawn 命令参数解析与 shell: true 的应用Node.js spawn 命令参数解析与 shell: true 的应用Node.js spawn 命令参数解析与 shell: true 的应用

    本文探讨Node.js child_process.spawn 函数在处理复杂命令行参数时遇到的常见问题,特别是当参数包含路径或需要特殊解释时,可能导致目标程序(如Java)无法正确识别。通过引入 shell: true 选项,并结合正确的参数格式化,可以有效解决此类问题,同时强调了使用此选项时的安…

    2026年9月26日 • 用户投稿
    000
  • 力压3A大作!曝独立游戏《Peak》一周就狂卖200万份

    力压3A大作!曝独立游戏《Peak》一周就狂卖200万份力压3A大作!曝独立游戏《Peak》一周就狂卖200万份力压3A大作!曝独立游戏《Peak》一周就狂卖200万份力压3A大作!曝独立游戏《Peak》一周就狂卖200万份

    生存类游戏《Peak》再创销售奇迹:根据Alinea Analytics最新统计,该游戏在Steam促销活动期间,单周销量逼近200万份。 目前,《Peak》在Steam平台已收获接近4万条用户评价,其中93%为好评,口碑表现极为强劲。 推动此次销量激增的关键因素,是8月11日推出的38%折扣优惠以…

    2026年9月26日 • 用户投稿
    000
  • 公众号粉丝互动怎么做_提升公众号粉丝互动的实用策略

    公众号粉丝互动怎么做_提升公众号粉丝互动的实用策略公众号粉丝互动怎么做_提升公众号粉丝互动的实用策略公众号粉丝互动怎么做_提升公众号粉丝互动的实用策略公众号粉丝互动怎么做_提升公众号粉丝互动的实用策略

    提升公众号互动需优化内容选题、设置奖励机制、善用投票问答、建立分层社群、创新视觉形式,通过共鸣内容与多元互动手段增强粉丝参与。 如果您希望提升公众号粉丝的参与度,但发现留言少、点赞低、分享不足,可能是内容与用户需求脱节或互动机制不完善。以下是提升公众号粉丝互动的有效策略: 一、优化内容选题激发共鸣 …

    2026年9月26日 • 用户投稿
    100
  • 量势而起•生态共盛•责筑未来|第三届新通话产业发展研讨会成功举办

    量势而起•生态共盛•责筑未来|第三届新通话产业发展研讨会成功举办量势而起•生态共盛•责筑未来|第三届新通话产业发展研讨会成功举办量势而起•生态共盛•责筑未来|第三届新通话产业发展研讨会成功举办量势而起•生态共盛•责筑未来|第三届新通话产业发展研讨会成功举办

    2025年9月25日,由中国信息通信研究院与中国通信企业协会联合主办的第三届新通话产业发展研讨会在北京国家会议中心顺利召开。本次会议作为中国国际信息通信展览会的重要组成部分,汇聚了来自工业和信息化部、信通院、电信运营商、设备制造商、终端厂商及行业应用企业的众多产业领袖与技术专家,围绕新通话技术的最新…

    2026年9月26日 • 用户投稿
    100
  • sublime怎么为特定文件类型禁用自动补全_sublime特定文件禁用自动补全技巧

    sublime怎么为特定文件类型禁用自动补全_sublime特定文件禁用自动补全技巧sublime怎么为特定文件类型禁用自动补全_sublime特定文件禁用自动补全技巧sublime怎么为特定文件类型禁用自动补全_sublime特定文件禁用自动补全技巧sublime怎么为特定文件类型禁用自动补全_sublime特定文件禁用自动补全技巧

    打开目标文件类型后进入Preferences > Settings – Syntax Specific,2. 在配置中添加”auto_complete”: false以禁用自动补全,3. 可选调整auto_complete_triggers和delay减少干…

    2026年9月26日 • 用户投稿
    100
  • x浏览器下载速度慢怎么提升_x浏览器多线程下载速度提升技巧

    x浏览器下载速度慢怎么提升_x浏览器多线程下载速度提升技巧x浏览器下载速度慢怎么提升_x浏览器多线程下载速度提升技巧x浏览器下载速度慢怎么提升_x浏览器多线程下载速度提升技巧x浏览器下载速度慢怎么提升_x浏览器多线程下载速度提升技巧

    1、通过启用并行下载和云加速引擎,2、清理缓存与优化DNS设置,可显著提升x浏览器下载速度。 如果您在使用x浏览器下载文件时遇到速度缓慢的问题,这可能是由于浏览器设置、网络环境或服务器连接等因素导致的。通过调整相关配置和优化网络条件,可以有效改善下载体验。 本文运行环境:小米14 Pro,Andro…

    2026年9月26日 • 用户投稿
    000
  • iPhone 17 Air 细节曝光,续航拉胯了 .

    iPhone 17 Air 细节曝光,续航拉胯了 .iPhone 17 Air 细节曝光,续航拉胯了 .iPhone 17 Air 细节曝光,续航拉胯了 .iPhone 17 Air 细节曝光,续航拉胯了 .

    今年,苹果公司将推出一款超薄的 iphone 17 air(暂定名),以取代销售表现不佳的 plus 机型。 随着三星发布同样主打轻薄的 Galaxy S25 Edge,关于 iPhone 17 Air 的更多细节也被曝光。 爆料者 yeux1122 透露了两个关键信息:电池和重量。 首先,让人印象…

    2026年9月26日 • 用户投稿
    000
  • 苹果灵动岛怎么关闭应用

    苹果灵动岛怎么关闭应用苹果灵动岛怎么关闭应用苹果灵动岛怎么关闭应用苹果灵动岛怎么关闭应用

    当你想关闭灵动岛显示的应用时,可以按住应用指示器并选择“关闭”。注意,关闭灵动岛应用后,它仍会在后台运行,永久关闭需要从主屏幕或任务管理器中进行。灵动岛上的实时活动仍会继续显示。 关闭灵动岛应用 当你想暂时关闭灵动岛显示的应用时,可以按照以下步骤操作: AppMall应用商店 AI应用商店,提供即时…

    2026年9月26日 • 用户投稿
    000
  • Windows Server 2012 Hyper-V群集图文教程

    Windows Server 2012 Hyper-V群集图文教程Windows Server 2012 Hyper-V群集图文教程Windows Server 2012 Hyper-V群集图文教程Windows Server 2012 Hyper-V群集图文教程

    接下来我们将继续测试windows server 2012 hyper-v群集功能,以实现虚拟机的高可用性。 实验环境: 四台服务器均运行Windows Server 2012 DataCenter操作系统。 SRV2012服务器上安装了iSCSI目标服务器角色,并配置了两个虚拟磁盘,供两台群集服务…

    2026年9月26日 • 用户投稿
    100
  • 在什么目录下可以找到Linux常用命令

    在什么目录下可以找到Linux常用命令在什么目录下可以找到Linux常用命令在什么目录下可以找到Linux常用命令在什么目录下可以找到Linux常用命令

    在 Linux 中,常用命令的目录包括:1、/bin:基本二进制可执行文件2、/usr/bin:用户命令,包括 grep、find、awk、sed 等3、/sbin:系统管理员命令,需要 root 权限4、/usr/sbin:用户系统管理员命令,无需 root 权限5、/usr/local/bin:…

    2026年9月26日 • 用户投稿
    300
  • 苹果灵动岛怎么关闭震动

    苹果灵动岛怎么关闭震动苹果灵动岛怎么关闭震动苹果灵动岛怎么关闭震动苹果灵动岛怎么关闭震动

    灵动岛可以关闭震动吗?是的,可以通过以下步骤关闭灵动岛震动:1. 打开设置应用程序。2. 点按辅助功能。3. 选择触觉。4. 禁用灵动岛反馈开关。 关闭灵动岛震动的步骤 苹果灵动岛是一个创新的功能,可以在 iPhone 14 Pro 和 Pro Max 机型上看到。虽然它通常是一个有用的功能,但有时…

    2026年9月26日 • 用户投稿
    100

发表回复

登录后才能评论
关注微信