如何在javascript reactjs中转换日期格式

b91juud3  于 2023-01-01  发布在  Java
关注(0)|答案(8)|浏览(141)
<b>Select Datetime</b><br/>
<DateTimeField onChange={this.clockevent} format={"x"}/>   

clockevent=(newDate)=>{
    var dateVal ="/Date("+newDate+")/";
    var date = new Date(parseFloat(dateVal.substr(6)));

    console.log(
    date.getFullYear() + " " +
    (date.getMonth() + 1) + "/" +
    date.getDate() + "  " +

    date.getHours() + ":" +
    date.getMinutes() + ":" +
    date.getSeconds() );
}

结果:
2018年2月1日14时16分
我想要结果加上日、月和ss '格式(DD MM ss)我想要此格式=
2018年2月1日14时16分

w8ntj3qf

w8ntj3qf1#

我还没有找到格式YYYY/MM/DD的方法,但我有2位数的格式。

const today = Date.now();

console.log(new Intl.DateTimeFormat('en-US', {year: 'numeric', month: '2-digit',day: '2-digit', hour: '2-digit', minute: '2-digit', second: '2-digit'}).format(today));
ymdaylpp

ymdaylpp2#

使用日期-fns库

对于“2018/02/01 14:16:00”,此格式使用以下代码

import { format } from 'date-fns';
console.log(format(new Date(), 'yyyy/MM/dd kk:mm:ss'))

用这个你可以定制你自己的格式。
date-fns
For customizing date format use this

q1qsirdb

q1qsirdb3#

我为React.js开发人员找到了最简单的解决方案。
在我的模式中(在后端),日期格式是这样的。

createdAt: {
       type: Date,
       default: Date.now()
}

它将输出为2019-04-30T08:59:00.000Z,即(YYYY-MM-DD'T'HH:MM:SS.SSSZ)。要更改前端中的日期格式,您可以使用以下命令轻松解决该问题

1. npm install dateformat
2. import dateFormat from 'dateformat';
3. dateFormat("2019-04-30T08:59:00.000Z", "mmmm dS, yyyy") to get April 30th, 2019
or dateFormat("2019-04-30T08:59:00.000Z", "dddd, mmmm dS, yyyy") to get Tuesday, April 30th, 2019.
wyyhbhjk

wyyhbhjk4#

只需使用矩并定义如下格式

moment(yourDate).format("YYYY/MM/DD kk:mm:ss");
laximzn5

laximzn55#

i did.  
        var dateVal ="/Date("+newDate+")/";
        var date = new Date(parseFloat(dateVal.substr(6)));
        const YYYY = date.getFullYear();
        let DD = date.getMonth()+1;
        let MM = date.getDate();
        let HH = date.getHours() ;
        let mm = date.getMinutes()
        let ss = date.getSeconds();

        if(DD<10)
        {
            DD=`0${DD}`;
        }
        if(MM<10)
        {
            MM=`0${MM}`;
        }

        if(HH<10)
        {
            HH=`0${HH}`;
        }
        if(mm<10)
        {
            mm=`0${mm}`;
        }
        if(ss<10)
        {
            ss=`0${ss}`;
        }

        const ltime= (YYYY+DD+MM+HH+mm+ss);
y3bcpkx1

y3bcpkx16#

你可以使用dateformat库(https://github.com/felixge/node-dateformat),它有这么多的选项,可以帮助你,它很容易使用,你可以在前端或后端使用它,它工作得很好,我在这里举个例子:

dateFormat(expirationdate, "yyyy-mm-dd")
f1tvaqid

f1tvaqid7#

    • Moment JS**提供对每个日期字符串的控制,您可以轻松地将其转换为另一种格式。
    • 安装时刻包:**
npm install --save moment
    • 使用时刻转换日期格式:**
import Moment from 'moment';
  
class App extends Component {
  constructor() {
  
    this.state = {
      dateDMY: Moment("1994-07-01").format('DD-MM-YYYY'),
      dateMDY: Moment("1994-07-01").format('MM-DD-YYYY'),
      dateYMD: Moment("01-07-1994").format('YYYY-MM-DD')
    }
  }
  
  render() {
    return (
      <div>
        <p> DMY Format: { this.state.dateDMY } </p>
        <p> MDY Format: { this.state.dateMDY } </p>
        <p> YMD Format: { this.state.dateYMD } </p>
      </div>
    );
  }
}
   
render(<App />, document.getElementById('root'));
    • 输出:**
DMY Format: 01-07-1994
MDY Format: 07-01-1994
YMD Format: 1994-01-07
jei2mxaa

jei2mxaa8#

我用下面的逻辑,它可能会帮助你.

{new Date(your date).toLocaleString("lookup")}

相关问题