nodejs中解构语法

2023-05-16

1、解构语法

1、对象解构

存在意义:简化代码

注意点:

1、在进行完全解构时,属性值内花括号中的属性值的顺序可以随意颠倒

2、//解构之后起重命名 let {name:itsName} = obj; 解构之后重命名为itsName

在属性值中利用“:”重命名可以避免两个相同常量同时出现报错,为此出现此写法;在调用时为避免冲突,我们使用此方式去调用

输出时使用:consloe.log(itsName);

 


let obj = {
    name: "nodejs",
    age:11,
    email:"nodejs@163.com"
};
​
// 取出所有属性并赋值:
// let name  = obj.name;
// let age  = obj.age;
// let email  = obj.email;
​
// 现在只需要(等效于上面的写法):
// let {name, email, age} = obj;  //{ }中的变量名和obj的属性名一致   完全解构
​
// 部分解构
// let {name} = obj;     // 部分解构
​
//解构之后重命名   
let {name:itsName} = obj;     解构之后重命名为itsName
​  

2、数组解构

1、部分解构

2、复合解构(可以获取多维数组)

3、利用解构的方法去拿到其他下标的元素方法:

 

4、数组解构中不存在重命名的方法


let arr1 = [10, 20, 30];
​
let [a, b, c] = arr1;
​
console.log(a);  //10
console.log(b);  //20
console.log(c);  //30
​
// 部分解构
let [d] = arr1;
console.log(d);  //10
​
let [ , ,f] = arr1;
console.log(f);  //30
​
​
// 复合解构
let arr2 = [1, 2, [10, 20, 30]];
let [ j, k, [x, y, z]] = arr2;
console.log(j);  //1
console.log(k);  //2
console.log(x);  //10
console.log(y);  //20
console.log(z);  //30  

3、字符串解构


let string1 = "xyz";
​
let [a,b,c] = string1;
console.log(a);  //x
console.log(b);  //y
console.log(c);  //z
​
​
string1[1] = "Y";
console.log(string1);  // xyz    无法修改
console.log(string1[1]);  // y  

本博客为学习日记,若有侵权行为请联系我哦,谢谢.......

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

nodejs中解构语法 的相关文章

  • 如何强制 pm2 在特定时间后重新启动?

    我在用PM2让我的 Node js 应用程序保持运行 有什么办法可以拥有PM2每 1 小时重新启动一次我的应用程序 将下面的代码放入pm2 js并开始它pm2 start pm2 js var pm2 require pm2 pm2 con
  • Express URIError:无法解码参数

    当请求的参数包含时 我将 next js 与自定义 Express 服务器一起使用 它会导致此错误 URIError Failed to decode param faker at decodeURIComponent
  • Node.js 可读流_read用法

    我了解如何在 Node 的 new 中使用可写流Streams2库 但我不明白如何使用可读流 举个例子 一个流包装器围绕dgram module var dgram require dgram var thumbs twiddle func
  • 为什么changeResourceRecordSets没有被授权访问此资源?

    我正在尝试在 Route 53 中创建一条别名类型的新记录 以告诉 Route 53 起诉 CloudFront 来为该站点提供服务 我正在尝试使用以下代码来执行此操作 let options ChangeBatch Changes Act
  • Node Sequelize - “按原样”插入日期而不转换为 UTC

    我正在尝试运行一个简单的查询 例如 Insert into table somedate values 2018 06 11 23 59 00 但 Sequelize 将其执行为 Insert into table somedate val
  • 让 babel 排除测试文件

    在我的构建步骤中 我使用 babel 将代码转译为 es5 从src to dist 如何让它排除以以下结尾的文件 test js 包 json scripts build babel src out dir dist babelrc pr
  • 使用 Sequelize (NodeJS) 代替 * 指定特定字段

    好吧 我在 NodeJS 中有一个项目 我正在其中使用 Sequelize 来实现 MySQL ORM 这件事工作得非常好 但是我试图弄清楚是否有一种方法可以指定在查询的基础上返回哪些字段 或者是否有一种方法可以在某处执行 query 例如
  • 如何使用 Passport /Facebook 策略/验证 Supertest 请求?

    我使用 Passport js 进行身份验证 Facebook 策略 并使用 Mocha 和 Supertest 进行测试 如何使用 Supertest for Facebook 策略创建会话并发出经过身份验证的请求 这是用户未登录时的示例
  • 缓存消息discord.js

    我想做一些反应角色 但为此 我必须缓存机器人启动之前发送的消息 我尝试过channel messages fetch 但到目前为止还没有奏效 我当前的代码 client on messageReactionAdd async reactio
  • PDF 附件 NodeMailer

    预先感谢您的回复 我编写了一些使用nodemailer 0 7 1的代码 它发送电子邮件并将pdf附加到电子邮件中 但是 pdf 附件在编码时会自行损坏或截断或发生其他情况 我之所以说这是附件之前的文件 即我本地的文件 是512kb 而电子
  • 如果 Grunt 任务的子任务之一失败,如何使其失败?

    我在 grunt 中有一个构建任务 如下所示 grunt registerTask build jshint uglify 问题是 即使 jshint 任务失败 uglify 任务也会运行 如果它的子任务之一失败 如何使 build 任务终
  • 通过node.js的npm安装gulp会破坏windows

    我想在我的 Windows 机器上使用 gulp 它实际上工作得很好 除非我尝试使用创建的文件 例如推送到 github 或删除 然后它就崩溃了 因为文件路径太长 这似乎是一个相当常见的问题 https github com joyent
  • 什么是 TTY?如何在 Ubuntu 上启用它?

    我目前正在设置一个 Node js 服务器 并且在这里使用调试模块https github com visionmedia debug https github com visionmedia debug 我正在尝试启用它 以便我可以在输出
  • npm install 的问题(Angular)

    今天我尝试创建一个新项目 所以我使用这个命令 ng new NAME style less 并在我的cmder中弹出错误和警告 所以我卸载了 Roaming npm 和 npm cache 中的节点和文件 然后我安装了node并再次下载cm
  • 角度编译速度慢

    我有一个API in Symfony PHP 我用它来测试postman它就像一个魅力 但当我这样做时ng serve aot optimization应用程序开始构建并且消息compiled successfully 需要一分多钟 当我需
  • 如何强制 tsc 忽略 node_modules 文件夹?

    我正在使用 tsc 构建任务 不幸的是 我总是从节点模块文件夹中收到相同的错误 Executing task node modules bin tsc cmd watch p tsconfig json lt node modules ty
  • 如何让 Angular 监视多个库的更改并在需要时重新编译

    这个问题与让 Angular 应用程序监视库更改并进行自我更新 https stackoverflow com questions 60473727 make angular app watch for libraries changes
  • fs-extra:源和目标不能相同。 (科尔多瓦)

    我在使用 cordova 构建时遇到错误 Error Source and destination must not be the same 构建系统 Ionic ionic cli 4 10 1 ionic framework ionic
  • 如何清除node.js中的超时

    您好 我们正在使用 node js socket io 和 redis 开发应用程序 我们有这个程序 exports processRequest function request result var self this var time
  • 如何在网络服务器中的端口 80 而不是端口 5000 上运行“部署”。

    我正在使用 deployd 运行一个网站 并且在将在端口 5000 上运行的应用程序更改为端口 80 时遇到问题 我想要做的是不要使用 mydomain com 5000 而只想使用 mydomain com 5000 com 谢谢 根据内

随机推荐

  • JS中~Dom和Bom方法汇总

    var newNode 61 document createElement 34 div 34 创建一个元素节点 var textNode 61 document createTextNode 34 hello world 34 创建一个文
  • ubuntu中文件夹的解压和创建用户组命令

    二 Windows下7ZIP软件的安装 因为Linux下很多文件是 bz2 xff0c gz结尾的压缩文件 xff0c 因此需要在windows下安装7ZIP软件 二 gzip压缩工具 gzip工具负责压缩和解压缩 gz格式的压缩包 gzi
  • JS高级部分对于数据、内存的解析

    内存中堆和栈道区别 xff1a 堆是在内存中开辟的一块较大容量的区域 xff0c 主要用来存放基本值类型的我们可以通过获取地址的方式去获得堆中的基本值类型 xff0c 且堆里面的内容一经存在便不会删除 xff0c 这也就是我们对一个变量实现
  • 原型链概念论述(一)

    对象中的静态成员和实例成员 xff1a 使用构造函数方法创建对象时 xff0c 可以给构造函数和创建的实例对象添加属性和方法 xff0c 这些属性和方法都叫做成员 实例成员 在构造函数内部添加给this 的成员 xff0c 属于实例对象的成
  • 原型链理论概述(二)

    面向对象的思维特点 xff1a 1 xff0e 抽取 xff08 抽象 xff09 对象共用的属性和行为组织 封装 成一个类 模板 xff09 2 xff0e 对类进行实例化 获取类的对象 面向对象编程我们考虑的是有哪些对象 xff0c 按
  • JS中~insertAdjacentHTML() 方法(插入元素到指定位置)

    insertAdjacentHTML 方法将指定的文本解析为 Element 元素 xff0c 并将结果节点插入到DOM树中的指定位置 它不会重新解析它正在使用的元素 xff0c 因此它不会破坏元素内的现有元素 这避免了额外的序列化步骤 x
  • JS中~ 面向对象编程制作tab栏

    面向对象编程制作tab栏 利用constructor属性接收实例对象传递过来的参数去获取和htm结构中的元素 xff0c 在类函数中对各种不同的功能封装成不同的函数 xff0c 在制作过程中相互调用 xff0c 第一步的点击上边按钮与此同时
  • 初识jquery

    jQuery 入口函数 1 function 2 document ready function 注意 xff1a 等着DOM结构渲染完毕即可执行内部代码 xff0c 不必等到所有外部资源加载完成 xff0c jQuery帮我们完成了封装
  • jQuery基础(二)

    xff1a eq获取到的索引号的index从0开始因此eq 2 是标签的第三个标签 选择器筛选 function 34 nav gt li gt a 34 mouseover function this siblings 34 ul 34
  • Thinkphp开启项目分组,绑定二级域名

    如果发现没有效果 xff0c 请开启debug xff0c 清除缓存
  • 链式编程+jQuery中html( )和text( )方法

    事件切换的复合属性写法 xff1a 标签名 hover function 执行函数 function 执行函数 xff0c 这一个方法仅hover可用 jQuery中有个动画队列的机制 xff1a 当我们对一个对象添加多次动画效果时后添加的
  • jQuery动态创建元素,通过元素操作修改购物车相关交互效果

    1 创建元素 语法 34 39 lt li gt lt li gt 34 动态的创建了一一个 lt li gt 2 添加元素 内部添加元素 生成之后 它们是父级关系 外部添加元素 生成之后 他们是兄弟关系 1 内部添加 把内容放入匹配元素内
  • jQuery 尺寸、位置操作

    1 width height 获取设置元素 width和height大小 console log 34 div 34 width 34 div 34 width 300 2 innerWidth innerHeight 获取设置元素 wid
  • jQuery侧边导航栏模块交互效果,导航栏点击事件、卷动事件、节流阀

    任务分析 xff1a 当我们滚动到模块 xff0c 就让电梯导航显示出来点击电梯导航页面可以滚动到相应内容区域核心算法 因为电梯导航模块和内容区模块 对应的当我们点击电梯导航某个小模块 xff0c 就可以拿到当前小模块的索引号 xff0c
  • jQuery学习周记

    周记 本周主要跟着教学视频制作了商城购物车案例 xff0c 页面电梯导航 xff0c 学习了利用jQuery操作尺寸 位置的操作 xff0c 这一部分就类似于JS中的BOM页面文档类型 xff0c 主要是通过对页面卷动事件进行一系列操作 其
  • jQuery自动触发事件与bootstrap/jQuery插件用法

    jQuery自动触发事件 有些事件希望自动触发 比如轮播图自动播放功能跟点击右侧按钮一致 可以利用定时器自动触发右侧按钮点击事件 xff0c 不必鼠标点击触发 语法 xff1a 1 element click 2 element trigg
  • 初识AJAX基础(一)

    1 初识AJAX 1 概要 google suggest A xff1a 通过发送请求到服务器上获取相关数据 B xff1a 发送方式 xff1a 通过URL 超链接 表单验证 C xff1a 将请求的数据发送给服务器获得相关数据 它是浏览
  • 使用nvm切换node方法,以及在nvm中的注意事项

    利用nvm随意下载nodejs版本 使用nvm去切换nodejs版本过程中出现的乱码情况分析 1 nvm安装路径错误导致nodejs下载路径有误 xff0c 无法正常打开 xff08 建议删除 xff0c 重新安装时使用默认路径安装 xff
  • nodejs中对es6语法规范讲解

    1 var的弊端及let关键字 1 var声明的变量有预解析 xff08 变量提升 xff09 xff0c 造成 逻辑混乱 xff0c 可以先使用 xff0c 后声明 2 var可以重复定义同一个变量 xff0c 逻辑错误 xff0c 第二
  • nodejs中解构语法

    1 解构语法 1 对象解构 存在意义 xff1a 简化代码 注意点 xff1a 1 在进行完全解构时 xff0c 属性值内花括号中的属性值的顺序可以随意颠倒 2 解构之后起重命名 let name itsName 61 obj 解构之后重命