将字符串转换为实时日期&时间

Convert string into real time date&time

本文关键字:amp 时间 日期 实时 字符串 转换      更新时间:2023-09-26

我有JSON代码:

{ "time":"2015-10-20T11:20:00+02:00" }

我从脚本中读取了JSON,表中的输出是:

2015-10-20T11:20:00+02:00

然而,我希望输出等于当天及其时间。

例如:周二20:00(如果我的时区是+02)

您可以这样设置日期格式:

var date = new Date('2015-10-20T11:20:00+02:00');
var days = ['Sun','Mon','Tue','Wed','Thu','Fri','Sat'];
var output = days[date.getDay()] + ' ' + date.getHours() + ':' + date.getMinutes();
console.log(output);
// Tue 6:20

根据我的经验,处理日期和时间最干净的方法是使用moment.js。顺便说一句,我鼓励您始终将日期时间数据存储在UTC中,并离开本地浏览器在本地时区显示。

要格式化您的输入,您可以执行以下操作:

var vrijeme = "2015-10-20T11:20:00+02:00",
    date = moment(vrijeme, moment.ISO_8601);
var formatted = date.format('ddd h:mm');
console.log(formatted); // open the console with F12 to see the results
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.10.6/moment.min.js"></script>

您可以在不使用天数组的情况下实现

function getTwoDigitValue(str) {
  return str.toString().length == 1 ? "0" + str : str;
}
(function() {
  var date = new Date('2015-10-20T11:20:00+02:00');
  var output = date.toString().split(" ")[0] + " " +
    getTwoDigitValue(date.getHours()) + ":" +
    getTwoDigitValue(date.getMinutes());
  console.log(output)
})()