js根據某個日期,獲取該日期的前一個星期六以及後一個星期五
阿新 • • 發佈:2019-02-15
//獲取時間段 var date = new Date(); //標準日期格式yyyy/mm/dd var weekByDate = date.substring(0, 4) + "/" + date.substring(5, 7) + "/" + date.substring(8, 10); console.log(getWeekByDay(weekByDate)); //獲取日期字串對應的時間戳 var timestamp = new Date(weekByDate).getTime(); //獲取星期幾 var currentDay = new Date(weekByDate).getDay(); //獲取時間戳 var previousSaturdayTime; var nextFridayTime; if (currentDay == 0) { //獲取該天前一個星期六的時間戳 previousSaturdayTime = timestamp- 24 * 60 * 60 * 1000; //獲取該天后一個星期五的時間戳 nextFridayTime = timestamp + (5 - currentDay) * 24 * 60 * 60 * 1000; } else { //獲取該天前一個星期六的時間戳 previousSaturdayTime = timestamp - (currentDay + 1) * 24 * 60 * 60 * 1000; //獲取該天后一個星期五的時間戳 nextFridayTime = timestamp + (5 - currentDay) * 24 * 60 * 60 * 1000; } console.log("前一個星期六的日期---" + getNowFormatDate(previousSaturdayTime)); console.log("後一個星期五的日期---" + getNowFormatDate(nextFridayTime)); /* *根據日期獲取當前星期X(0-6,0代表星期天) *@param yyyy/mm/dd 標準日期格式 *@returns:星期X */ function getWeekByDay(weekByDate) { var week = new Date(weekByDate).getDay(); //建立星期陣列 var weekNum = new Array("星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"); return weekNum[week]; } /* *獲取當前時間戳的日期字串 * @param timestamp 時間戳 *@returns:YYYY年MM月DD日 */ function getNowFormatDate(timestamp) { var year = new Date(timestamp).getFullYear(); var month = new Date(timestamp).getMonth() + 1; var date = new Date(timestamp).getDate(); if (month >= 1 && month <= 9) { month = "0" + month; } if (date >= 0 && date <= 9) { date = "0" + date; } var dateByTime = year + "年" + month + "月" + date + "日"; return dateByTime; }