为什么我不能仅显示日期(日期,月份和年份而没有时间)?

时间:2018-09-24 11:13:35

标签: javascript date datetime

我有一些代码,几乎可以完成我需要做的所有事情。它计算的是将来的3天(不包括日期),然后显示我的“预计发货日期”

日期显示为完整的日期和时间,而不仅仅是日期。
日月日年12:02:57 GMT + 0100(英国夏令时)

任何人都可以使用以下代码进行帮助,以便它排除本地时间并且仅显示将来的日期(不包括周末),
DD / MM / YYYY
或以下格式;
6月20日星期一

谢谢!

function addDates(startDate,noOfDaysToAdd){
var count = 0;
while(count < noOfDaysToAdd){
endDate = new Date(startDate.setDate(startDate.getDate() + 1));
if(endDate.getDay() != 0 && endDate.getDay() != 6){
   //Date.getDay() gives weekday starting from 0(Sunday) to 6(Saturday)
   count++;
}
}
return startDate;
}
var today = new Date();
var daysToAdd = 3;
document.write ('Estimated Dispatch Date: ' + addDates(today,daysToAdd));

1 个答案:

答案 0 :(得分:0)

您可以使用toDateString方法仅显示Date对象的日期部分,但是您将需要使用其他一些方法来完全控制日期字符串的格式。

您可以使用getDategetMonthgetFullYear方法提供一些额外的代码行,仅显示本地日期和时间的日期,月份和年份部分,与格式。您可以尝试将特定的格式设置参数传递给toLocaleString,但这可能会在不同的浏览器中显示不同的结果。例如,下面的代码在Chrome中以dd / mm / yyyy格式输出日期,但不能保证在所有浏览器中的输出。

new Date().toLocaleString('en-GB', {year: 'numeric', month: 'numeric', day: 'numeric'})

不确定我要遵循的处理周末日期的方式,因此以下内容分别处理formatDate函数和addDays函数所需的日期格式,而// format input date to dd/mm/yyyy const formatDate = (date) => { let d = date.getDate(); // day of the month let m = date.getMonth(); // month index from 0 (Jan) to 11 (Dec) let yyyy = date.getFullYear(); // 4 digit year let dd = (d < 10 ? '0' : '') + d; // format date to 2 digit let mm = (m + 1 < 10 ? '0' : '') + (m + 1); // convert index to month and format 2 digit return dd + '/' + mm + '/' + yyyy; } // add input days to today and adjust for weekend output const addDays = (today, days) => { let now = today.getTime() // now in UTC milliseconds let ms = 24 * 60 * 60000; // milliseconds in one day let date = new Date(now + days * ms); // today plus input days let day = date.getDay(); // weekday index from 0 (Sun) to 6 (Sat) // adjust weekend results to next weekday if (day === 0 || day === 6) { let adj = day === 0 ? 1 : 2; date = new Date(now + (days + adj) * ms); } return date; } document.write('Estimated Dispatch Date: ' + formatDate(addDays(new Date(), 3)));函数只处理周末日期如果最初计算的日期是在星期六或星期日,则将日期前移到星期一。

<errortext>
Failed to find admin configured username attribute in the SAML Response. Please ask your administrator to check SAML user attribute name.
</errortext>