使用Javascript

时间:2017-12-01 05:32:12

标签: javascript date datetime react-native

我有以下日期需要转换为'dd/MM/yyyy''HH:mm'。如何在不使用getHours()moment.js的情况下实现此目的(大多数答案都使用其中任何一种)?

2017-11-24T16:05:00Z

4 个答案:

答案 0 :(得分:2)

如果您正在寻找自定义,那么下面的代码将帮助您

var dt='2017-11-24T16:05:00Z'
dtArray=dt.split('T')
dateArray=dtArray[0].split('-') //dtArray[0] manupulating date
result = dateArray.reverse().join('/')
console.log(result) //"24/11/2017"

你对HH:MM

的做法类似
time=dtArray[1].split(':').slice(0,2).join(':')

答案 1 :(得分:0)

您可以使用正则表达式组:

var myDate = "2017-11-24T16:05:00Z";
var myRegexp = /(\d\d\d\d)-(\d\d)-(\d\d)/
var match = myRegexp.exec(myDate);
var formattedDate = `${match[3]}/${match[2]}/${match[1]}`
alert(formattedDate);

答案 2 :(得分:0)

第1步  创建新的ISO字符串并在yyyymmdd中提取日期

var data = new Date().toISOString().substring(0, 10);

<强>步骤2 从&#39; - &#39;

分开
var date = data.split('-');

第3步 安排你想要的方式

var newDate = date[2] +'-'+ date[1] +'-'+ date[0]

与HH相同:mm

new Date().toISOString().substring(11, 16);

答案 3 :(得分:-1)

您可以使用date-fns js库来执行此操作。

import {format} from 'date-fns';
const date = format(new Date(), 'DD/MM/YYYY');
const time = format(new Date(), 'HH:mm');

console.log(date) => 30/11/2017
console.log(time) => 11:17