JavaScript去除数组对象中多余字段,提取对象数组中某些的属性组成新的对象数组。

2023-11-16

对象数组中每个对象包含很多属性,批量操作只需要要用到一两个属性,可以提取原数组中的属性组成一个新的对象数组。

const data=[
        {
            "classtypecode": "新人对象-NST-suoxie", 
            "classtypename": null, 
            "trainset": null, 
            "trainobject": null, 
            "traintype": null, 
            "classsimple": null, 
            "state": null, 
            "isopenup": null, 
            "xrflag": null, 
            "branchtype": null, 
            "branchtype2": null, 
            "makeoperator": null, 
            "makedate": null, 
            "maketime": null, 
            "modifyoperator": null, 
            "modifydate": null, 
            "modifytime": null, 
            "p1": null, 
            "isDel": null
        }, 
        {
            "classtypecode": "外勤-NST-WQ001", 
            "classtypename": null, 
            "trainset": null, 
            "trainobject": null, 
            "traintype": null, 
            "classsimple": null, 
            "state": null, 
            "isopenup": null, 
            "xrflag": null, 
            "branchtype": null, 
            "branchtype2": null, 
            "makeoperator": null, 
            "makedate": null, 
            "maketime": null, 
            "modifyoperator": null, 
            "modifydate": null, 
            "modifytime": null, 
            "p1": null, 
            "isDel": null
        }, 
        {
            "classtypecode": "测试-NST-CC", 
            "classtypename": null, 
            "trainset": null, 
            "trainobject": null, 
            "traintype": null, 
            "classsimple": null, 
            "state": null, 
            "isopenup": null, 
            "xrflag": null, 
            "branchtype": null, 
            "branchtype2": null, 
            "makeoperator": null, 
            "makedate": null, 
            "maketime": null, 
            "modifyoperator": null, 
            "modifydate": null, 
            "modifytime": null, 
            "p1": null, 
            "isDel": null
        }, 
        {
            "classtypecode": "XR-ST-XRXGPX", 
            "classtypename": null, 
            "trainset": null, 
            "trainobject": null, 
            "traintype": null, 
            "classsimple": null, 
            "state": null, 
            "isopenup": null, 
            "xrflag": null, 
            "branchtype": null, 
            "branchtype2": null, 
            "makeoperator": null, 
            "makedate": null, 
            "maketime": null, 
            "modifyoperator": null, 
            "modifydate": null, 
            "modifytime": null, 
            "p1": null, 
            "isDel": null
        }, 
        {
            "classtypecode": "入司6个月-ST-RS", 
            "classtypename": null, 
            "trainset": null, 
            "trainobject": null, 
            "traintype": null, 
            "classsimple": null, 
            "state": null, 
            "isopenup": null, 
            "xrflag": null, 
            "branchtype": null, 
            "branchtype2": null, 
            "makeoperator": null, 
            "makedate": null, 
            "maketime": null, 
            "modifyoperator": null, 
            "modifydate": null, 
            "modifytime": null, 
            "p1": null, 
            "isDel": null
        }, 
        {
            "classtypecode": "XR-NST-XRYWPX", 
            "classtypename": null, 
            "trainset": null, 
            "trainobject": null, 
            "traintype": null, 
            "classsimple": null, 
            "state": null, 
            "isopenup": null, 
            "xrflag": null, 
            "branchtype": null, 
            "branchtype2": null, 
            "makeoperator": null, 
            "makedate": null, 
            "maketime": null, 
            "modifyoperator": null, 
            "modifydate": null, 
            "modifytime": null, 
            "p1": null, 
            "isDel": null
        }, 
        {
            "classtypecode": "A201-NST-YWZRJSB", 
            "classtypename": null, 
            "trainset": null, 
            "trainobject": null, 
            "traintype": null, 
            "classsimple": null, 
            "state": null, 
            "isopenup": null, 
            "xrflag": null, 
            "branchtype": null, 
            "branchtype2": null, 
            "makeoperator": null, 
            "makedate": null, 
            "maketime": null, 
            "modifyoperator": null, 
            "modifydate": null, 
            "modifytime": null, 
            "p1": null, 
            "isDel": null
        }
    ] 
  • 方法一:
 let newArr = data.map((item, index) => {
    return Object.assign({}, { value: item.classtypecode, label: item.classtypecode });
  });
  • 方法二:
 const newArr = data.map((x) => {
    return { value: x.classtypecode, label: x.classtypecode };
 }); 

在这里插入图片描述

将maketime的属性值变成新的对象属性,classtypecode的属性值变成maketime的属性值的属性值

  let arr1 = data.map((item) => {
        let obj = {};
        obj[item.maketime] = item.classtypecode;
        return obj;
      });

在这里插入图片描述
null 是因为maketime值为null

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

JavaScript去除数组对象中多余字段,提取对象数组中某些的属性组成新的对象数组。 的相关文章

  • onclick 函数上的 CSS 选择器

    有没有办法让CSS选择器onclick function 您可以在onclick https stackoverflow com questions 24365416 select element which have specific a
  • 使用 Ajax 在输入时提交 Textarea,然后渲染部分内容而不刷新整个页面

    目前我正在尝试通过 JS 和 Ajax 在没有提交按钮的情况下发表评论 并且它有效 问题是当帖子提交时 页面重新加载到 post id comment页面 我希望它呈现部分内容 而不是刷新整个页面或将我带到不同的页面 我对 JS 不熟悉 任
  • 使用画布元素作为文本区域

    我正在寻找有关如何使用类似于文本区域的画布元素的直接描述 我见过这样的项目Ace http ace ajax org 只是想知道如何像文本区域一样写入该区域 只是纯文本 没有什么花哨的 提前致谢 Ace 曾经是 Mozilla Skywri
  • 执行页面的 javascript 后保存页面的 html 输出

    我正在尝试抓取一个网站 它首先加载 html js 使用js修改表单输入字段 然后使用POST 如何获得 POSTed 页面的最终 html 输出 我尝试使用 phantomjs 执行此操作 但它似乎只有渲染图像文件的选项 谷歌搜索表明这应
  • jQuery - 提高处理 XML 时的选择器性能

    我正在处理一个 XML 文件 当使用 XPath 样式选择器选择节点时 该文件的性能非常慢 这是运行特别慢的部分代码 for i 0 i
  • 将组件注册到现有的 Vue.js 实例

    我是 Vue js 新手 我想注册一个本地组件 如下所述 https v2 vuejs org v2 guide components html Local Registration https v2 vuejs org v2 guide
  • Sails.js - 如何更新嵌套模型

    attributes username type email validated by the ORM required true password type string required true profile firstname s
  • 变量前面加双下划线

    我的节点代码中有以下代码片段 var fs require fs fs readdir dirname function err files console log files 为什么变量 dirname 有双下划线 我知道一个下划线是私有
  • 语法:const {} = 变量名,任何人都可以解释或指出我正确的方向[重复]

    这个问题在这里已经有答案了 这个语法在 JavaScript 中意味着什么 可能是 ES6 const 变量名 我目前正在尝试掌握 React 在很多例子中我都遇到过这种语法 例如 const girls guys women men st
  • 禁用整个站点的 IE8 加速器

    是的 我知道有类似的问题 https stackoverflow com questions 499565 is it possible to disable ie8 accelerators on my website在 SO 上 但它已
  • 如何在启用导航栏的情况下打开新的浏览器窗口?

    我有这个JS方法 function OpenLink strDestination var features left 10 top 10 location 0 menubar 0 resizable 0 scrollbars 1 stat
  • Promise 构造函数回调的主体何时执行?

    假设我有以下代码构造一个Promise function doSomethingAsynchronous return new Promise resolve gt const result doSomeWork setTimeout gt
  • D3.js - 具有多个环的圆环图

    以下示例显示了 D3 js 中的圆环图 是否可以向图表添加多个圆环 var dataset apples 53245 28479 19697 24037 40245 var width 460 height 300 radius Math
  • 不可见的 reCAPTCHA - 缺少必需的参数:sitekey

    我正在为每个带有具有类的按钮的表单动态加载不可见的 reCAPTCHAg recaptcha 我遇到的问题是验证码未正确加载 我不知道为什么 我按照验证码网站上的文档进行操作 但我不确定如何以及为什么会出现此错误 Uncaught Erro
  • 使用 Socket.IO 时如何访问会话标识符?

    我有一个聊天 我需要管理独特的连接 我四处搜寻 但我找到的解决方案似乎都已被弃用 那么 如何使用 Socket IO 获取套接字的会话 ID 我在用着Node js http en wikipedia org wiki Node js Ex
  • 从未使用 mimeType 初始化的 MediaRecorder 获取 mimeType

    我正在使用 MediaRecorder API 在页面上录制一些媒体 在我的 MediaRecorder 初始化中 我没有指定内容类型 因为我不需要任何特别的内容 浏览器可以选择它想要的 var mediaRecorder new Medi
  • 简单的颜色变化

    我正在创建一个用户界面 用户可以在其中更改页面的颜色值 我想要的是获取分配给其背景颜色的值并将其变亮一定程度 我只是想获得一条亮点线 而不必每次都制作新图像 示例 用户将背景颜色设置为 ECECEC 现在我希望某个元素边框变成 F4F4F4
  • window.open 使用 css 样式

    我想设计我的 window open 目前 我的网页上有一些项目由于解析了某个类而打开 然后在新窗口中打开指定的文本 我想更改字体大小 字体和填充等 这是我的 JavaScript 代码
  • 使用 QtWebEngine 将 C++ 对象暴露给 Qt 中的 Javascript

    使用 QtWebkit 可以通过以下方式将 C 对象公开给 JavascriptQWebFrame addToJavaScriptWindowObject如中所述https stackoverflow com a 20685002 5959
  • R闪亮:使用闪亮的JS从数据表中获取信息

    我想读出所有列名称以及它们在数据表中显示的顺序 由于不同的原因 我无法使用 stateSave 等选项 我对 JS 没有什么把握 但我确信用它可以完成 所以我需要你帮助我 我尝试过类似的代码片段 datatable data callbac

随机推荐