时间戳转换:获取星期、日期、小时、分钟等,无需创建 "new Date()"
Timestamp conversion: Get day, date, hour, minutes, etc without creating a "new Date()"
我正在构建一个网络应用程序,为了正确显示列表中的项目,我正在将附加到每个项目的时间戳转换为可读格式。
示例:1475842129770
变为 Friday, 07.09.2016
为了创建这个字符串,我使用标准 javascript 方法创建一个新的日期对象,然后使用 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;
}
这个 returns 星期几(忽略德国日名称):
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;
}
}
我的问题:
是否有任何 shorter/faster 方法来获取这些时间戳属性?
我特别感兴趣是否有一种方法可以不创建日期对象,从而使时间戳数字本身变得神奇。
感谢您的意见! :)
您可以使用数组作为日期名称
function getDayOfTheWeek(timestamp) {
var days = ["Sonntag", "Montag", "Dienstag", "Mittwoch", "Donnerstag", "Freitag", "Samstag"];
return days[(new Date(timestamp)).getDay()];
}
我正在构建一个网络应用程序,为了正确显示列表中的项目,我正在将附加到每个项目的时间戳转换为可读格式。
示例:1475842129770
变为 Friday, 07.09.2016
为了创建这个字符串,我使用标准 javascript 方法创建一个新的日期对象,然后使用 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;
}
这个 returns 星期几(忽略德国日名称):
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;
}
}
我的问题:
是否有任何 shorter/faster 方法来获取这些时间戳属性? 我特别感兴趣是否有一种方法可以不创建日期对象,从而使时间戳数字本身变得神奇。
感谢您的意见! :)
您可以使用数组作为日期名称
function getDayOfTheWeek(timestamp) {
var days = ["Sonntag", "Montag", "Dienstag", "Mittwoch", "Donnerstag", "Freitag", "Samstag"];
return days[(new Date(timestamp)).getDay()];
}