reactjs - 在 react 中带来关于过滤器的最大数据记录

标签 reactjs react-native react-redux

我有一个 JSON 对象,其中任何用户都可以提交应用程序,并且任何用户都可以执行该应用程序。应用程序获得批准后,我需要显示最大日期“提议”和最大日期“已批准”。我的 JSON 对象是

var histData = [{
     "EXECUTION_STATE_CODE":"PROPOSED",
     "EXECUTION_BY":"User1",
     "EVENT_ID":4893664,
     "CREATED_ON":"2020-09-25T18:57:33.000Z",
    },
    {
     "EXECUTION_STATE_CODE":"REJECTED",
     "EXECUTION_BY":"ADMINUser1",
     "EVENT_ID":4893665,
     "CREATED_ON":"2020-09-25T19:57:33.000Z",
    },
    {
     "EXECUTION_STATE_CODE":"MODIFIED",
     "EXECUTION_BY":"User12",
     "EVENT_ID":4893669,
     "CREATED_ON":"2020-09-25T20:12:33.000Z",
    },
    {
     "EXECUTION_STATE_CODE":"PROPOSED",
     "EXECUTION_BY":"User12",
     "EVENT_ID":4893670,
     "CREATED_ON":"2020-09-25T20:32:33.000Z",
    },
    {
     "EXECUTION_STATE_CODE":"APPROVED",
     "EXECUTION_BY":"ADMINUser22",
     "EVENT_ID":4893672,
     "CREATED_ON":"2020-09-25T18:57:33.000Z",
    }];

我尝试过的代码如下,但不起作用。

let var1 = new Date(Math.max.apply(null, histData.map(function(e) {
  console.log("object", e)
  if(e.EXECUTION_STATE_CODE==="PROPOSED"){

  return e.EXECUTED_ON;
}

预期结果是

Application 
Proposer : User12 
Approved : AdminUser22

请帮忙

最佳答案

考虑到您有对象数组,我将其命名为 histData

var histData = [{
     "EXECUTION_STATE_CODE":"PROPOSED",
     "EXECUTION_BY":"User1",
     "EVENT_ID":4893664,
     "CREATED_ON":"2020-09-25T18:57:33.000Z",
    },
    {
     "EXECUTION_STATE_CODE":"REJECTED",
     "EXECUTION_BY":"ADMINUser1",
     "EVENT_ID":4893665,
     "CREATED_ON":"2020-09-25T19:57:33.000Z",
    },
    {
     "EXECUTION_STATE_CODE":"MODIFIED",
     "EXECUTION_BY":"User12",
     "EVENT_ID":4893669,
     "CREATED_ON":"2020-09-25T20:12:33.000Z",
    },
    {
     "EXECUTION_STATE_CODE":"PROPOSED",
     "EXECUTION_BY":"User12",
     "EVENT_ID":4893670,
     "CREATED_ON":"2020-09-25T20:32:33.000Z",
    },
    {
     "EXECUTION_STATE_CODE":"APPROVED",
     "EXECUTION_BY":"ADMINUser22",
     "EVENT_ID":4893672,
     "CREATED_ON":"2020-09-25T18:57:33.000Z",
    }];
 


var maxPropsed = histData.filter(h => h.EXECUTION_STATE_CODE==="PROPOSED").reduce((a, b) => {
    return new Date(a.CREATED_ON) > new Date(b.CREATED_ON) ? a : b;
 },{}).EXECUTION_BY;

var maxApproved = histData.filter(h => h.EXECUTION_STATE_CODE==="APPROVED").reduce((a, b) => {
    return new Date(a.CREATED_ON) > new Date(b.CREATED_ON) ? a : b;
 },{}).EXECUTION_BY;
 
 
 

    var histData = [{
         "EXECUTION_STATE_CODE":"PROPOSED",
         "EXECUTION_BY":"User1",
         "EVENT_ID":4893664,
         "CREATED_ON":"2020-09-25T18:57:33.000Z",
        },
        {
         "EXECUTION_STATE_CODE":"REJECTED",
         "EXECUTION_BY":"ADMINUser1",
         "EVENT_ID":4893665,
         "CREATED_ON":"2020-09-25T19:57:33.000Z",
        },
        {
         "EXECUTION_STATE_CODE":"MODIFIED",
         "EXECUTION_BY":"User12",
         "EVENT_ID":4893669,
         "CREATED_ON":"2020-09-25T20:12:33.000Z",
        },
        {
         "EXECUTION_STATE_CODE":"PROPOSED",
         "EXECUTION_BY":"User12",
         "EVENT_ID":4893670,
         "CREATED_ON":"2020-09-25T20:32:33.000Z",
        },
        {
         "EXECUTION_STATE_CODE":"APPROVED",
         "EXECUTION_BY":"ADMINUser22",
         "EVENT_ID":4893672,
         "CREATED_ON":"2020-09-25T18:57:33.000Z",
        }];
     
 

    var maxPropsed = histData.filter(h => h.EXECUTION_STATE_CODE==="PROPOSED").reduce((a, b) => {
        return new Date(a.CREATED_ON) > new Date(b.CREATED_ON) ? a : b;
     },{}).EXECUTION_BY;
    
    var maxApproved = histData.filter(h => h.EXECUTION_STATE_CODE==="APPROVED").reduce((a, b) => {
        return new Date(a.CREATED_ON) > new Date(b.CREATED_ON) ? a : b;
     },{}).EXECUTION_BY;
     
     
     console.log("maxPropsed: ", maxPropsed);
     
     console.log("maxApproved:",  maxApproved);
     
     
     

关于reactjs - 在 react 中带来关于过滤器的最大数据记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64212898/

相关文章:

reactjs - 我该如何做类似 redux `connect()` - 在声明时将 props 放入组件中的事情?

javascript - 无法通过代理从 React 和 Node 访问 API

javascript - React - 如何比较独立组件之间的 Prop

reactjs - I18nManager.forceRTL 不会在首次应用程序加载中应用更改

reactjs - React Router v4 在父级上设置 activeClass

javascript - 尝试停止在 react native 中加载 webView 时出现未定义错误

react-native - 与react-native run-ios独占的不变违规

mysql - INSERT INTO 正在向 mySQL 表中插入空值

reactjs - React/Redux/Immutable - 关于子组件 HOC 策略的困惑

reactjs - 使用react-redux转发功能组件中的ref(v.6.0.1)