ES6 解构对象和数组
1.解构对象
let saveFiled = {
extension: "jpg",
name:"girl",
size:14040
};
ES5
function fileSammary(file){
return `${file.name}.${file.extension}的总大小是${file.size}`;
}
console.log(fileSammary(saveFiled));
ES6
function fileSammary({name,extension,size}){
return `${name}.${extension}的总大小是${size}`;
}
console.log(fileSammary(saveFiled));
2.解构数组
1.返回数组第一位数值
const names = ["Henry","Bucky","Emily"]; ES5
console.log(names[0]) ES6
const [name1,name2,name3] = names;
console.log(name1) 2.返回数组个数
ES5
console.log(names .length) ES6
const { length } = names
console.log(length) 3.结合展开运算符
const [name,...rest] = names;
console.log(name, rest); 4.对象数组
const people = [
{name:"Henry",age:20},
{name:"Bucky",age:25},
{name:"Emily",age:30}
]; ES5
var age = people[0].age;
console.log(age); ES6
const [age] = people;
console.log(age) //{name:"Henry",age:20}
const [{age}] = people;
console.log(age) // 20 5. 使用场景 将数组转化为对象
const points = [
[4, 5],
[10, 1],
[0, 40]
]
// 期望数据格式
[
{x:4,y:5},
{x:10,y:1},
{x:0,y:40}
] ES6
let newPoints = points.map(pair => {
// const x = pair[0];
// const y = pair[1];
const [x,y] = pair;
return {x,y}
}) let newPoints = points.map(([x, y]) => {
// const x = pair[0];
// const y = pair[1];
// const [x,y] = pair;
return { x, y }
}) console.log(newPoints)
ES6 解构对象和数组的更多相关文章
- ES6 - 解构(数组和对象)
解构对象 /** * 解构:快捷,方便 * * 对象解构 */ { var expense = { type: "es6", amount: "45" }; / ...
- ES6解构赋值
前面的话 我们经常定义许多对象和数组,然后有组织地从中提取相关的信息片段.在ES6中添加了可以简化这种任务的新特性:解构.解构是一种打破数据结构,将其拆分为更小部分的过程.本文将详细介绍ES6解构赋值 ...
- es6 解构赋值
ES6允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这被称为解构(Destructuring). 关于给变量赋值,传统的变量赋值是这样的: var arr = [1,2,3];//把数组的值 ...
- 初识ES6 解构
1.数组的解构 ES6 允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这被称为解构 例子: let [a, b, c] = [1, 2, 3]; console.log(a);//1cons ...
- 简单看看es6解构赋值
哎,我真的是太难了,今天就被这个解构赋值(也可以叫做析构,貌似析构是在c++中的,所以我这里叫做解构赋值吧)弄的我很烦,本来以为很容易的,结果还是弄了好久...就总结一下解构吧! 1.解构的基本使用 ...
- ES6 解构 destructuring
解构的作用:简化书写长度,提升开发效率. 解构对象 在开发中我们常用到使用ajax请求数据,并且把数据渲染到页面上.可能这个数据返回的对象或数组.例如返回一个obj{name:'zwq',age:18 ...
- ES6解构赋值常见用法
解构赋值出现的契机: let obj = { a: 1, b: 2 } // 取值 let a = obj.a let b = obj.b 问题核心: 每次取值既要确定对象属性名,还得重新定义一个变量 ...
- ES6 解构
{ "code": 200, "msg": "success", "data": { "total" ...
- Perl面向对象(3):解构——对象销毁
本系列: Perl面向对象(1):从代码复用开始 Perl面向对象(2):对象 Perl面向对象(3):解构--对象销毁 第3篇依赖于第2篇,第2篇依赖于1篇. perl中使用引用计数的方式管理内存, ...
随机推荐
- .NET Core的SqlSugar上手使用小例子
开始直接建个空的WEB项目-建Controllers文件夹-开启MVC-添加NuGet程序包SqlSugarCore public class Startup { // This method get ...
- C# vb .net实现过度曝光效果滤镜
在.net中,如何简单快捷地实现Photoshop滤镜组中的过度曝光效果呢?答案是调用SharpImage!专业图像特效滤镜和合成类库.下面开始演示关键代码,您也可以在文末下载全部源码: 设置授权 第 ...
- C#采集摄像头实时画面和抓拍
在.net中,并没有简单直接的操纵摄像头的类.那么如何简单快捷地采集摄像头的画面,进行抓拍等操作呢?答案是调用SharpCapture!专业采集摄像头画面等数据的类库.下面开始演示关键代码,您也可以在 ...
- 【转载】 C#中float、double以及decimal类型有何不同
在C#语言中,float.double以及decimal类型都可以用来表示小数,但三者还是有一定的不同,有效数字为相比的话,decimal类型的有效数字最大,float类型最小.计算浮点类型的运算,如 ...
- python day19 : 购物商城作业,进程与多线程
目录 python day 19 1. 购物商城作业要求 2. 多进程 2.1 简述多进程 2.2 multiprocessing模块,创建多进程程序 2.3 if name=='main'的说明 2 ...
- Vue.js详解
vuejs介绍 Vue.js是当下很火的一个JavaScript MVVM库,它是以数据驱动和组件化的思想构建的.相比于Angular.js,Vue.js提供了更加简洁.更易于理解的API,使得我们能 ...
- jquery DataTable默认显示指定页
原文:https://blog.csdn.net/zimuxin/article/details/83304819 主要添加iDisplayStart和iDisplayLength参数即可 $('#t ...
- Sign in with apple
UI: https://developer.apple.com/design/human-interface-guidelines/sign-in-with-apple/overview/ 审核: h ...
- scrapy 爬虫中间件 httperror中间件
源码 class HttpErrorMiddleware(object): @classmethod def from_crawler(cls, crawler): return cls(crawle ...
- 使用10046追踪执行计划demo
(一)开启10046追踪 SQL> alter session set events '10046 trace name context forever,level 12'; (二)执行sql语 ...