how to get min or max dates from a list of dates using moment.js?

Deadly 提交于 2019-11-29 06:07:32

问题


I want to have the max date from the list of dates given in the handleClick function. How to find the max date from the list of dates using moment.js?

I have the following code:

import React, {Component} from 'react';
import moment from 'moment';

class Getdate extends Component
{
  constructor() {
    super();
    this.state = {
       dates = []
    }
    this.handleClick = this.handleClick.bind(this);
  }
  handleClick() {
     this.state.dates = ['2017-11-12', '2017-10-22', '2015-01-10', '2018-01-01', '2014-10-10'];
     console.log(this.state.dates);
  }
  render{
    return (
     <button onClick={this.handleClick}>Get Max Date</button>
    )
  }
}
export default Getdate

回答1:


You can use moment.max function :

let moments = this.state.dates.map(d => moment(d)),
    maxDate = moment.max(moments)



回答2:


Sort them with a custom compartor, then select the first one (or last, try it out);

   array.sort(function(d1, d2) {
       return moment(d1).isBefore(moment(d2));
        });


来源:https://stackoverflow.com/questions/46502405/how-to-get-min-or-max-dates-from-a-list-of-dates-using-moment-js

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!