簡體   English   中英

JavaScript日期對象的日期不正確

[英]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>&nbsp</td>
        <td>&nbsp</td>
      </tr>
    </tbody>
  </table>
</div>

謝謝你的投入

您的密碼

date.getDate() - date.getDay() - 1; 

將會返回23,因為我們目前在2016年1月30日-因此它的功能完全符合您的要求:)

查看Date.jsMoment.js ,它們具有許多幫助程序方法,這些方法可以使Datetime算術更加容易。

我想您不希望所示的一周並非總是從23日星期六到29日星期五。

可能的解決方案:調用getDate()來檢查結果是否為星期六,將其用作var saturday然后您就可以推導出星期一至星期五。 但是,如果getDate()不是星期六,請查找前一個星期六並使用它。

另外, 日歷的有用資源

試試吧-如果您做不到,請給我留言,我會很樂意幫助您。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM