您好,我想将日期时间从语言环境格式解析为英语格式(适用于.NET REST API Server)。我使用jQuery datetimepicker:

jQuery(document).ready(function () {
    'use strict';
    jQuery.datetimepicker.setLocale('cs');
    jQuery('#startDate').datetimepicker({
        format: 'd.m.Y H:i',
    });
});

<input ng-model="$ctrl.startDate" class="form-control" id="startDate" datetime-picker/>


例如,在datetimepicker中,我有这个日期10.01.2018 20:15(2018年1月10日),我需要转换为2018/01/10 20:15。此格式已正确发送到.NET服务器。如何转型?

我需要后退方法的帮助。我从服务器以以下格式获取日期:2018-01-10T20:15:00,我想以以下格式在datetimepicker中显示:10.01.2018 20:15如何转换此格式?

谢谢

最佳答案

您可以编写一个简单的解析器来获取日期字符串的组成部分,然后创建一个new Date并返回所需的格式。



const datestr = '10.01.2018 20:15'

// prepend zero if less than 10
const z = x => x > 9 ? x : '0' + x

// parse formatted date into server date
const parse = str => {
  const [day, month, year, hour, min] = str.split(/\.|\s|\:/)
  const date = new Date(year, month - 1, day, hour, min)
  const y = z(date.getFullYear())
  const m = z(date.getMonth() + 1)
  const d = z(date.getDate())
  const h = z(hour)
  const mn = z(min)
  return `${y}-${m}-${d}T${h}:${mn}:00`
}

console.log(
  parse(datestr)
)

关于javascript - Javascript-将区域设置日期时间解析为我们日期时间格式,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/48194562/

10-10 01:17
查看更多