天天看點

[JavaScript]日期函數應用

//日期轉換為格式"yyyy-mm-dd"

function transferDate(date)

{

  var yearTemp = date.getYear();

  var monthTemp = date.getMonth() + 1;

  var dayTemp = date.getDate();

  if (parseInt(monthTemp) < 10)

  {

    monthTemp = "0" + monthTemp;

  }

  if (parseInt(dayTemp) < 10)

    dayTemp = "0" + dayTemp;

  return yearTemp + "-" + monthTemp + "-" + dayTemp;

}

//根據日期擷取周号

function getWeekNo(dateStr)

  var myDate = new Date(dateStr);

  var tempDate = new Date(myDate.getFullYear(),0,1);

  var weekDay = parseInt("1065432".charAt(myDate.getDay()));

  var tempTime = myDate.getTime() - tempDate.getTime() - weekDay * 24 * 60 * 60 * 1000;

  weekNo = Math.ceil(tempTime / (7 * 24 * 60 * 60 * 1000));

  return weekNo + 1;

//根據日期擷取本周周一的日期

function getMonday(dateStr)

  var date = new Date(dateStr);

  var weekDay = date.getDay(); // 今天是這周的第幾天

  var n = - weekDay + 1; // 距離天數

  //星期天的算法不同

  if (weekDay == 0)

    n = -7;    

  var time = date.getTime();

  var monday = new Date(time + n * 24 * 3600 * 1000);

  return transferDate(monday);

//根據日期擷取本周周日的日期

function getSunday(dateStr)

  var n = 7 - weekDay; // 周日距離今天的天數

  var sunday = new Date(time + n * 24 * 3600 * 1000);

  return transferDate(sunday);

alert(getSunday("2010/07/06"));

繼續閱讀