[英]convert a string to date object javascript returns an incorrect date
[英]Javascript Date Object incorrect date
您好,我只需要另一組眼光。 我創建了此代碼來設置一個帶有當前日期的日歷,它工作正常,但是今天(1月30日),日歷仍然顯示它從1月23日開始。
這是我的代碼筆的鏈接: http ://codepen.io/cavascript/pen/MKXrbj
這是代碼:
var date = new Date();
var saturday = date.getDate() - date.getDay() - 1;
var sunday = date.getDate() - date.getDay() ;
var monday = date.getDate() - date.getDay() + 1 ;
var tuesday = date.getDate() - date.getDay() + 2 ;
var wednesday= date.getDate() - date.getDay() + 3 ;
var thursday = date.getDate() - date.getDay() + 4 ;
var friday = date.getDate() - date.getDay() + 5 ;
var saturday = (new Date(date.setDate(saturday))).toDateString();
var sunday = (new Date(date.setDate(sunday))).toDateString();
var monday = (new Date(date.setDate(monday))).toDateString();
var tuesday = (new Date(date.setDate(tuesday))).toDateString();
var wednesday = (new Date(date.setDate(wednesday))).toDateString();
var thursday = (new Date(date.setDate(thursday))).toDateString();
var friday = (new Date(date.setDate(friday))).toDateString();
//add to html row
$('#dateRow').html('<td colspan="4">Date</td><td colspan="4">'+saturday+'</td><td colspan="4">'+sunday+'</td><td colspan ="4">'+monday+'</td><td colspan="4">'+tuesday+'</td><td colspan="4">'+wednesday+'</td><td colspan="4">'+thursday+'</td><td colspan="4">'+friday+'</td><td>Hours</td><td>Delete</td>');
這是HTML:
<div class="container-fluid">
<div class="table-responsive">
<table class="table table-bordered">
<tbody>
<tr id="dateRow">
</tr>
<tr>
<td colspan="4">Name</td>
<td colspan="2">Br/lnch</td>
<td colspan="2">Dinner</td>
<td colspan="2">Br/lnch</td>
<td colspan="2">Dinner</td>
<td colspan="2">Br/lnch</td>
<td colspan="2">Dinner</td>
<td colspan="2">Br/lnch</td>
<td colspan="2">Dinner</td>
<td colspan="2">Br/lnch</td>
<td colspan="2">Dinner</td>
<td colspan="2">Br/lnch</td>
<td colspan="2">Dinner</td>
<td colspan="2">Br/lnch</td>
<td colspan="2">Dinner</td>
<td> </td>
<td> </td>
</tr>
</tbody>
</table>
</div>
謝謝你的投入
您的密碼
date.getDate() - date.getDay() - 1;
將會返回23,因為我們目前在2016年1月30日-因此它的功能完全符合您的要求:)
查看Date.js或Moment.js ,它們具有許多幫助程序方法,這些方法可以使Datetime算術更加容易。
我想您不希望所示的一周並非總是從23日星期六到29日星期五。
可能的解決方案:調用getDate()來檢查結果是否為星期六,將其用作var saturday
然后您就可以推導出星期一至星期五。 但是,如果getDate()不是星期六,請查找前一個星期六並使用它。
另外, 日歷的有用資源
試試吧-如果您做不到,請給我留言,我會很樂意幫助您。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.