使用日期框架moment.js来进行日期的处理(API地址:http://momentjs.com/docs/):
/**
* 国际化日期获取周一为一周开始的周
* @param {Object} s_date
*/
function getWeekDate(date){
var origin = new moment(date).lang('en');
var week_number = origin.isoWeeks();
return week_number;
}
/**
*按照格式获取当前日期(默认为YYYY-MM-DD)*@param _type 日期类型('YYYYMMDD HH:mm:ss'年月日时分秒)
*/
function formatDate(_type){
var momentObject = moment();
if(_type == null){
_type = "YYYY-MM-DD";
}
return momentObject.format(_type);
}
/**
*单独获取日期中的年、月、日、时、分、秒(默认为当前日期)
*@param _date 日期值
*@param _type 日期类型('YYYYMMDD HH:mm:ss'年月日时分秒)
*/
function getYears(_type, _date){
var _moment;
if(_date == null){
_moment = moment();
}else{
_moment = moment(_date);
}
var _return = "";
switch(_type){
case "Y":
_return = _moment.year();
break;
case "M":
_return = _moment.month() + 1;
break;
case "D":
_return = _moment.date();
break;
case "H":
_return = _moment.hours();
break;
case "MI":
_return = _moment.minute();
break;
case "S":
_return = _moment.second();
break;
case "W":
_return = _moment.day();
break;
default:
_return = _moment.year();
}
return _return;
}
/**
*获取输入日期是第几周
*@param _year 当前年
*@param weekNumber 第几周
*/
function getWeekByDate(_date){
var _moment;
if(_date == null){
_moment = moment();
}else{
_moment = moment(_date);
}
var weekNumber = _moment.week();
return weekNumber;
}
/**
*获取指定年的第几周的某一天
*@param _year 当前年
*@param weekNumber 第几周
*/
function getLastYearWeek(_year, weekNumber){
var _moment = moment([_year, 0, 1]);
_moment.week(weekNumber);
return _moment.format("YYYY-MM-DD");
}
/**
*获取指定年的第几周的周几的日期
*@param _year 当前年
*@param weekNumber 第几周
*@param dayNumber 周几("Sunday"|0:周六,可以使用英文或者数字)
*/
function getDayByYearWeek(_year, weekNumber, dayNumber){
var _moment = moment([_year, 0, 1]);
_moment.week(weekNumber);
return _moment.day(dayNumber).format("YYYY-MM-DD");
}