map方法处理返回数据,获取指定数据简写方法

前言
后端返回数据为数组列表时,通常比较全面,包含了很多不需要的数据,可以通过 map 方法处理返回数据,筛选出想要的数据
例如
// 返回数据
res = [
  { id: 1, name: 'zhangsan', age: 16, gender: 0 },
  { id: 2, name: 'lisi', age: 20, gender: 1 }
]

如果只想获取 res 每项中的 id 和 name
即为
// 处理后的数据
data = [
  { id: 1, name: 'zhangsan'},
  { id: 2, name: 'lisi'}
] 最简单的方法就是 for 循环遍历,本文不讲 for 循环,讲一下 map 的简单写法
下面统一按照上述的 res 数据为例子
首先从 map 最简单的方式实现 data
const data = res.map(function(item) {
  return {
    id: item.id,
    name: item.name
  }
}) 当然可以使用 ES6 箭头函数简化
const data = res.map(item => ({ id: item.id, name: item.name }))

注意:这里需要注意的是使用箭头函数返回一个对象时不能直接去写 {} ,要在对象后面加上括号 ({}),防止和函数后面的大括号冲突而报错
上面是正常的写法,利用 ES6 解构赋值,还可以简写为如下
骚操作来了
const data = res.map(({ id, name }) => ({ id, name })) 其实真正理解起来也不难,从上述简单的方式来看,箭头函数前面的参数 ({id, name}) 实际上是把 item 解构成了两个变量,其中这两个变量是 item 中存在的,
即为 id, name ,然后后面是返回了一个对象,就可以用前面两个解构出来的变量了,由于 key 和 value 一样,所以写成了对象的简写方式
但是这种只适用于 key 值一样的情况,如果想换 data 的 key 值怎么办呢
例如想让处理后的 data 的 id 变为 code
// 处理后的数据
data = [
  { code: 1, name: 'zhangsan'},
  { code: 2, name: 'lisi' }
]

即为
const data = res.map(({ id, name }) => ({ code: id, name }))

完结撒花

文章来源:https://www.csdn.net/tags/Mtjakg0sNzk5NzEtYmxvZwO0O0OO0O0O.html

js map方法处理返回数据,获取指定数据简写方法的更多相关文章

  1. Oracle中使用游标获取指定数据表的所有字段名对应的字符串

    操作步骤:打开PLSQL Developer后,直接执行下面的语句就可以出来 --Oracle中使用游标获取指定数据表的所有字段名对应的字符串 declare mytablename VARCHAR( ...

  2. 速战速决 (6) - PHP: 获取 http 请求数据, 获取 get 数据 和 post 数据, json 字符串与对象之间的相互转换

    [源码下载] 速战速决 (6) - PHP: 获取 http 请求数据, 获取 get 数据 和 post 数据, json 字符串与对象之间的相互转换 作者:webabcd 介绍速战速决 之 PHP ...

  3. 通过const app = getApp()实现在 page 页面获取 app.js 定义的属性globalData,即获取全局数据

    App.js是项目的入口文件,页面的 page.js 文件会覆盖 app.js文件, App.js文件里面的一些方法: onLaunch : function(){}:这个方法是当小程序加载完毕后就执 ...

  4. js判断为空Null与字符串为空简写方法

    下面就是有关判断为空的简写方法.   代码如下: if (variable1 !== null || variable1 !== undefined || variable1 !== '') {  v ...

  5. Java实现获取命令行中获取指定数据

    执行ipconfig /all获取主机所有网卡信息并分析这些字符串,提取出有效网卡(网卡名称,mac地址,ipv4地址,掩码,网关,dns)将网卡插入HashMap中,key是网卡的名称,value是 ...

  6. Java 获取指定日期的方法汇总

    import java.text.DateFormat; import java.text.ParsePosition; import java.text.SimpleDateFormat; impo ...

  7. Java 获取指定日期的方法总结

    原文地址:http://bdcwl.blog.163.com/blog/static/765222652009104171521/ SimpleDateFormat sdf = new SimpleD ...

  8. Java 获取指定日期的方法总结 -转

    格式化日期 String-->Date  或者 Data-->String SimpleDateFormat sdf = new SimpleDateFormat("yyyy-M ...

  9. js页面用定时任务通过AJAX获取后台数据,但是从这个页面跳转到其他页面后,定时任务仍然在定时请求后台

    setInterval(function(){//ajax 请求后台数据},1000);这个是A页面的定时器然后我在A页面通过其他请求跳转到其他页面之后后台发现A页面的定时器的那个请求仍然在执行为什么 ...

  10. JS 根据Url参数名称来获取对应的值 方法封装

    function GetQueryString(name) { var reg = new RegExp("(^|&)" + name + "=([^&] ...

随机推荐

  1. Excel poi 设置单元格格式 发现不可读内容 已修复的记录: /xl/worksheets/sheet1.xml 部分的问题(巨坑)

    Excel poi 设置单元格格式 发现不可读内容 已修复的记录: /xl/worksheets/sheet1.xml 部分的问题(巨坑) 1.先设置值,后设置样式. 正确的是:先设置样式,后设置值. ...

  2. SQLBI_精通DAX课程笔记_01_DAX介绍

    一:函数式语言 DAX是一个函数式语言,应用于Analysis Services , PowerPivot , 和Power Bi . 二:共同与不同 2.1  共同点 DAX与PowerPivot  ...

  3. 基于 .NET CORE + VUE 前后端项目打包,实现批处理安装,一键部署

    2023年7月18日 目前基于已完成了基于WPF界面的全自动部署小工具 自动判断相关.net core环境和依赖,自动部署mysql数据库,自动部署前后端web服务的功能. 有疑问的可以直接评论. - ...

  4. rsync 的使用

    背景 原文地址:Rsync参数说明及使用文档(给我自己看的) 一.前言 最近发现rsync挺好用的--不过参数有点多,所以这儿写一篇给自己以后要用的时候做个参考. 二.参数说明 这儿全是我翻资料连蒙带 ...

  5. 使用kk在centos7上离线部署kubesphere v3.0.0详解

    环境准备 以三台centos 7.7 64bit 为例: 确保所有机器已经安装所需依赖软件(sudo curl openssl ebtables socat ipset conntrack docke ...

  6. Linux开机启动自定义脚本

    方式一:chkconfig命令 首先编写好自启的脚本 /etc/init.d/test.sh #!/bin/sh # chkconfig: 2345 10 90 # 创建个文件 touch /opt/ ...

  7. SpringBoot集成Nacos配置中心和服务注册

    安装Nacos https://blog.csdn.net/Soldoros_/article/details/118943062 引入nacos依赖包 <!-- Spring Boot 启动父 ...

  8. 10.2 web服务器

    Web客户端和服务器之间的交互用的是一个基于文本的应用级协议,叫做HTTP(Hypertext Transfer Protocol,超文本传输协议).HTTP是一个简单的协议.一个Web客户端(即浏览 ...

  9. [oeasy]python0075_删除变量_del_delete_variable

    删除变量 回忆上次内容 上次我们研究了字节序 字节序有两种   符号 英文名称 中文名称 < little-endian 小字节序 > big-endian 大字节序 字节序 用来 明确 ...

  10. [oeasy]python0040_换行与回车的不同_通用换行符_universal_newlines

    换行回车 回忆上次内容 区分概念 terminal终端 主机网络中 最终的 端点 TeleTYpewriter 电传打印机 终端硬件 shell 终端硬件基础上的 软件壳子 Console 控制台 主 ...