我正在构建一个网络应用程序并正确显示列表中的项目,我将附加到每个项目的时间戳转换为可读格式。
示例:1475842129770
变为Friday, 07.09.2016
为了创建这个字符串,我使用标准的javascript方式,创建一个新的Date-Object,然后使用getDate()
,getMonth()
等函数。
我的代码:
这会将时间戳转换为DD.MM.YYYY
function convertTimestampToReadable(timestamp) {
var t = new Date(timestamp),
d = t.getDate(),
m = t.getMonth(),
y = t.getFullYear();
return ((d<=9)?("0"+d):d)+"."+((m<=9)?("0"+m):m)+"."+y;
}
这一天返回星期几(忽略德国日名称):
function getDayOfTheWeek(timestamp) {
var t = new Date(timestamp);
switch (t.getDay()) {
case 0:
return "Sonntag";
break;
case 1:
return "Montag";
break;
case 2:
return "Dienstag";
break;
case 3:
return "Mittwoch";
break;
case 4:
return "Donnerstag";
break;
case 5:
return "Freitag";
break;
case 6:
return "Samstag";
break;
}
}
我的问题:
是否有更短/更快的方式来获取这些时间戳属性? 特别是我感兴趣的是,如果有一种方法没有创建一个Date-Object,那么就可以使用时间戳编号来制作一些魔法。
感谢您的投入! :)
答案 0 :(得分:1)
您可以使用数组作为日期名称
function getDayOfTheWeek(timestamp) {
var days = ["Sonntag", "Montag", "Dienstag", "Mittwoch", "Donnerstag", "Freitag", "Samstag"];
return days[(new Date(timestamp)).getDay()];
}