1

みんな、有効期限の1週間前に顧客に電子メールアラートを送信できるように、現在の日付の1週間前の日付が必要です.

ここに私が現在の日付のために書いたコードがあります

  var d = new Date();

  var month = d.getMonth()+1;
  var day = d.getDate();

  var current_date = d.getFullYear() + '/' +
  ((''+month).length<2 ? '0' : '') + month + '/' +
  ((''+day).length<2 ? '0' : '') + day;

  alert(current_date);

したがって、現在の日付から1週間を引いたような日付が必要です。どんな種類の助けにも感謝します。

4

3 に答える 3

4

これを試して

var today=new Date(); 
var lastWeekDate = new Date(today.setDate(today.getDate() - 7)));

alert(lastWeekDate);

JsFiddle デモ

日付をフォーマットしたい場合は、このように独自の関数を書くことができます

function formatDate(d){
  function pad(n){return n<10 ? '0'+n : n}
  return d.getUTCFullYear()+'/'+ pad(d.getMonth()+1) +'/'+ pad(d.getDate())
}

そしてそれをこのように呼びます

var formattedDate = formateDate(lastWeekDate) // returns `2013/10/19` 
于 2013-10-26T07:32:43.813 に答える
1
var today = new Date();
var lastWeek = new Date(today.getFullYear(), today.getMonth(), today.getDate() - 7);

編集

var oldDate = lastWeek.getFullYear() + "/"+ lastWeek.getMonth() +"/"+lastWeek.getDate();
于 2013-10-26T07:31:58.820 に答える
0

タイムスタンプを使用すると、より効率的で簡単になります。7 日ミリ秒: 7*24*60*1000=10080000 したがって、ユーザーの有効期限スタンプ t を保存する場合は、以下を確認するだけで済みます。

if(new Date.getTime()>=t) alert("expired");
else if(new Date.getTime()+10080000>=t) alert("notification");
else alert("all good");
于 2013-10-26T07:38:42.167 に答える