从客户端的对象数组中获取最新日期的优雅方法是什么?

2023-11-23

我在项目中使用AngularJS。

我从服务器获取对象数组。 每个对象都包含几个属性,其中之一是日期属性。

这是我从服务器获取的数组(json 格式):

[
  {
    "Address": 25,
    "AlertType": 1,
    "Area": "North",
    "MeasureDate": "2019-02-01T00:01:01.001Z",
    "MeasureValue": -1
  },
  {
    "Address": 26,
    "AlertType": 1,
    "Area": "West",
    "MeasureDate": "2016-04-12T15:13:11.733Z",
    "MeasureValue": -1
  },
  {
    "Address": 25,
    "AlertType": 1,
    "Area": "North",
    "MeasureDate": "2017-02-01T00:01:01.001Z",
    "MeasureValue": -1
  }
          .
          .
          .
]

我需要从数组中获取最新日期。

从对象数组中获取最新日期的优雅方法是什么?


一种干净的方法是将每个日期转换为Date()并取最大值

ES6:

new Date(Math.max(...a.map(e => new Date(e.MeasureDate))));

JS:

new Date(Math.max.apply(null, a.map(function(e) {
  return new Date(e.MeasureDate);
})));

where a是对象数组。

其作用是将数组中的每个对象映射到使用以下值创建的日期MeasureDate。然后将该映射数组应用于Math.max函数获取最新日期并将结果转换为日期。

通过将字符串日期映射到 JS Date 对象,您最终会使用类似的解决方案数组中的最小/最大日期?

--

一个不太干净的解决方案是简单地将对象映射到MeasureDate并对字符串数组进行排序。这仅适用于您使用的特定日期格式。

a.map(function(e) { return e.MeasureDate; }).sort().reverse()[0]

如果性能是一个问题,您可能需要reduce数组来获取最大值而不是使用sort and reverse.

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

从客户端的对象数组中获取最新日期的优雅方法是什么? 的相关文章

  • 类型错误:无法读取未定义的属性“defaultPrevented”

    当我进行以下测试时 我收到此错误 it should call pauseAnimationInterval if in focus inject function SearchBoxData intervalManager timeout
  • 如何按照编写的顺序迭代 javascript 对象属性

    我发现了代码中的一个错误 我希望通过最少的重构工作来解决该错误 此错误发生在 Chrome 和 Opera 浏览器中 问题 var obj 23 AA 12 BB iterating through obj s properties for
  • Ember.js 处理 View 事件后转换到路由

    Setup 我有一个 Ember 应用程序 支持使用 Imgur API 上传图像 我已经有一个工作路线和模板来处理任何 Imgur ID 但我想在上传新图像后转换到此路线 使用返回的 Imgur ID 这是该应用程序的相关部分 http
  • Node.js - console.log 不显示数组中的项目,而是显示 [Object]

    我在注销对象内数组的内容时遇到问题 实际的物体看起来像这样 var stuff accepted item1 item2 rejected response Foo envelope from The sender to new item1
  • Jquery 中的动态滚动位置

    请帮助我解决以下情况 我有 3 个页面 当滚动到达第二页时 用户滚动页面 它必须找到特定的 ID 然后触发一个函数 一旦第三页开始 另一个函数就会触发 根据要求我不应该使用任何插件
  • Javascript - 将值从下拉框传递到 Google Maps API

    我正在使用 Google 地图 API 为一家出租车公司创建报价表 目前 用户在 2 个文本框中输入出发点和接载点 API 会计算两点之间的距离以及行程费用 我正在尝试添加两个具有设定位置的下拉框 以便用户可以选择这些位置之一或使用文本框输
  • 如何流式传输 OpenAI 的完成 API?

    我想流式传输结果通过 OpenAI 的 API 完成 https beta openai com docs api reference completions 该文档提到使用服务器发送的事件 https developer mozilla
  • 如何在 Angular 中从父组件访问子组件?

    I have mat paginator在子组件a中 如下所示 子组件 html
  • 如何使JavaScript函数在Eclipse“大纲视图”中可见?

    我有这样的代码 但如果它在匿名函数中定义 则无法打开函数大纲 类没有问题 我该如何概述something2 请分享一些提示 我可以将所有函数标记为构造函数 但这是无效的方法 start of track event required deb
  • JS用正则表达式替换数字

    我有元素的标识符 如下所示 form book 1 2 3 我想要的是用其他值替换该标识符中的第二个数字 我将函数 match 与以下正则表达式一起使用 var regexp d d d 但它返回我包含的数组 1 2 3 2 因此 当我尝试
  • JQuery 验证在 IE8 中不起作用

    我使用 JQuery 验证脚本来验证 HTML 表单 这在 Firefox 中完美运行 但在 IE8 中不起作用 我认为冒号 或分号 有问题 但我无法抓住它 jQuery validator addMethod selectNone fun
  • 单击关闭按钮后不显示 Google 一键登录 UI

    我正在尝试按照本指南使新的谷歌一键登录工作 https developers google com identity one tap web https developers google com identity one tap web
  • 将 javascript 整数转换为字节数组并返回

    function intFromBytes x var val 0 for var i 0 i lt x length i val x i if i lt x length 1 val val lt lt 8 return val func
  • 为什么“tbody”不设置表格的背景颜色?

    我在用 tbody 作为 CSS 选择器来设置background color在一个表中 我这样做是因为我有多个 tbody 表内的部分 它们具有不同的背景颜色 我的问题是 当使用border radius在细胞上 细胞不尊重backgro
  • :jQuery / Sizzle 中的 nth-of-type()?

    让我惊讶的是Sizzle http sizzlejs com jQuery 使用的选择器引擎 带有一个内置的 nth child 选择器 但缺少 nth of type 选择器 为了说明之间的区别 nth child and nth of
  • 如何获取 UIWebView 中元素的位置?

    我在 iPad 程序中加载了 html 的 UIWebView 通过使用 webkit column width 我将 html 分为几列 padding 0px height 1024px webkit column gap 0px we
  • 无法在前端使用 JavaScript Fetch API 将文件上传到 FastAPI 后端

    我正在尝试弄清楚如何将图像发送到我的 API 并验证生成的token那是在header的请求 到目前为止 这就是我所处的位置 app post endreProfilbilde async def endreProfilbilde requ
  • 需要有关 React Js 的帮助

    我是 React Js 新手 我的代码无法正常工作 请看下面 这是我的脚本文件Main jsx 该文件由 React 编译 输出放置在 dist 文件夹下的 main js 文件中 var react require react react
  • 防止文本区域出现新行

    我正在开发聊天功能 使用 Vue 并使用文本区域作为输入 以便溢出换行 并且对于编写较长消息的用户来说更具可读性 不幸的是 当用户按下 Enter 键并提交时 光标会在提交之前移动到新行 从而使用户体验感觉不佳 关于如何使用普通 Javas
  • 用于 C# XNA 的 Javascript(或类似)游戏脚本

    最近我准备用 XNA C 开发另一个游戏 上次我在 XNA C 中开发游戏时 遇到了必须向游戏中添加地图和可自定义数据的问题 每次我想添加新内容或更改游戏角色的某些值或其他内容时 我都必须重建整个游戏或其他内容 这可能需要相当长的时间 有没

随机推荐

  • 为什么 JavaScript 中的匿名函数有名字?

    我正在读一本很棒的书 名为 JavaScript Ninja 的秘密 作者是 John Resig 和 Bear Bibeaoult 3 2章中给出了一个例子 var canFly function return true 然后它说 创建一
  • 按创建顺序对哈希表进行排序

    这类似于如何保持哈希表中元素的顺序 NET 除外 有没有Hashtable or Dictionary在 NET 中 允许您访问它的 Index条目的属性是否按照添加到集合中的顺序排列 A NameValueCollection可以通过索引
  • 如何在 sails.js 中获取当前域名地址

    我试图使用获取当前网址sails js 我尝试了以下方法 req param host and req param X Forwarded Protocol 返回未定义 req headers host 返回本地主机 但我的域不是本地主机
  • 如何获取管道中第一个命令的退出状态? [复制]

    这个问题在这里已经有答案了 我做了一个简单的脚本 more test bash bin bash echo test exit 1 当我运行脚本时 退出状态应该是1 tmp test bash echo 1 但是当我按以下方式运行时 tmp
  • 如何找出我的代码在哪里导致 GLib-GObject-CRITICAL?

    当 C C 应用程序失败并出现以下 CRITICAL 错误时 您能否告诉我如何找出导致错误的代码在哪里 我尝试在调试器中运行它 尝试在程序失败时执行 bt 但它没有显示导致关键问题的代码在哪里 process 3155 GLib GObje
  • 在 python 中,我可以将 print 函数的输出重定向到 stderr 吗?

    有很多print功能 python 2 7 在我的程序中 有什么方法可以添加几行然后所有输出都可以重定向到stderr 我想要的是 python 代码 而不是 linux 管道 例如我的程序是这样的 print hello world 我想
  • Python:在单词边界上分割unicode字符串

    我需要获取一个字符串 并将其缩短为 140 个字符 目前我正在做 if len tweet gt 140 tweet re sub r s tweet normalize space footer utils shorten urls po
  • MOVDQA 和 MOVNTDQA 以及 WB/WC 标记区域的 VMOVDQA 和 VMOVNTDQ 有什么区别?

    通过使用标记为 WB 回写 和 WC 写组合 的内存的指令之间的主要区别是什么 MOVDQA and MOVNTDQA 以及之间有什么不同VMOVDQA and VMOVNTDQ 是不是 内存已标记为 WC 指令 NT 与平常没有什么不同
  • 如何使用 git init 将本地 git hook 替换为更新版本?

    我和这位用户有完全相同的问题 git init 模板 替换修改后的钩子 我的全局 git hooks 中有一个新的模板文件 但是 原来的模板文件已经加载了 所以git init不会覆盖 我在这里读到了同样的内容 这似乎是正确的 git 行为
  • 使用moment.js,如何向用户显示当前的日期格式?

    给定一个文本字段 我想要一个合适的占位符 典型的占位符类似于 mm dd yyyy 但是 我想通过 moment js 使用区域设置感知日期 这意味着我将指定 l 作为 moment js 日期格式 如何确定在这种情况下 moment js
  • 如何使用 pandas 更改数据框中文本的字体大小

    我研究了 pandas 的样式文档 但无法准确地得到我的问题的特定和准确的答案 我正在使用数据帧读取 Excel 文件并在程序中处理该数据帧 最后 我使用 xlwings 库在另一个现有的 Excel 文件中写入处理后的数据帧 我在用 im
  • 如何使编辑器句柄可选择以显示属性检查器窗口

    这是来自的后续问题如何使贝塞尔曲线的各个锚点连续或不连续 请参阅它以获取已接受答案中的相关代码 请注意 我这样做是为了保持这个问题的简洁 因为相关代码相当冗长 我正在努力实现以下目标 使贝塞尔曲线手柄 控制点可选择 以便在选择时单个手柄的属
  • 根据谓词将列表拆分为列表列表

    我知道这个问题 但它与序列有关 这不是我的问题 给定此输入 例如 let testlist text1 text2 text3 text4 text5 text6 text7 let pred s string s StartsWith 我
  • 如何在 Swift 中将类分配给启动屏幕?

    我正在尝试更改从我的闪屏类调用 Web 服务的类 但它会触发错误消息 错误是 启动画面不允许自定义类 您的启动故事板在您的应用程序开始执行之前显示 因此 正如错误所示 它无法执行代码 您可以复制启动故事板中的场景作为主故事板的初始视图控制器
  • 在php中解析法国日期

    我有字符串 伦迪 2013 年 7 月 8 日 09 09 如何解析这个类型的字符串 I try date 08 Juillet 2013 09 09 date new DateTime date 但它抛出异常 The intl扩展可以用于
  • 您能否限制可以在 MATLAB GUI 编辑框中输入哪些字符?

    我想在 MATLAB GUI 中创建一个编辑框 仅允许在其中输入数字或字母 这可能吗 不存在这样的功能 至少没有记录在案 您可以分配一个回调来检查输入 但这将会发生after用户输入了非法字符 虽然我不知道具体该怎么做 但我猜你可以使用 J
  • ActionListener 如何工作?

    我知道如何使用动作侦听器并实现它们 但我想知道是否有人可以告诉我他们如何侦听事件 有某种轮询机制吗 操作侦听器使用以下方法注册事件观察者模式主事件循环会通知他们所注册的任何事件 所以不 这不是一个轮询 拉 机制 而是相反的 一个 推 回调
  • 拖动 WPF 用户控件

    我创建了一个可移动的UserControl
  • MySQL:在多列中查找相同的字符串

    我正在尝试制作一个类似搜索页面的功能 我想进行查询以在 ColumnA 和 ColumnB 以及 ColumnC 和 ColumnD 中查找 query 并选择在任何这些列中具有单词 短语 query 的行 这似乎有效 SELECT FRO
  • 从客户端的对象数组中获取最新日期的优雅方法是什么?

    我在项目中使用AngularJS 我从服务器获取对象数组 每个对象都包含几个属性 其中之一是日期属性 这是我从服务器获取的数组 json 格式 Address 25 AlertType 1 Area North MeasureDate 20