UNPKG

yylib-quick-mobile

Version:

yylib-quick-mobile

152 lines (135 loc) 3.52 kB
/** * Created by Ryn on 2016/8/6. * 帮助函数 */ // 一些私有变量 // 一些公有变量、函数 /** * * 判断这一年是闰年还是平年 * @param year {String/Number} 年份 * @returns {boolean} */ export const isLeapYear = function(year) { if (!typeof +year === 'number') { throw new Error("年份格式不正确"); } if (+year < 1790) { throw new Error("年份不能低于1790年"); } // 计算闰年方法 // 1.能被4整除而不能被100整除 // 2.能被400整除 return (year % 4 === 0 && year % 100 !== 0) || (year % 400 === 0); }; /** * 返回月份中的第一天是星期几 * @returns {number} * 1 星期一 * 2 星期二 * 3 星期三 * 4 星期四 * 5 星期五 * 6 星期六 * 0 星期天 */ export const weekOfMonth = function(date) { if (!date) { date = new Date(); } if(!(date instanceof Date)){ date=new Date(date); } return new Date(getFullYear(date), getMonth(date), getDay(date)).getDay(); }; /** * 获取月份 * @param date * @returns {*|number} */ export const getMonth = function(date) { if (!date) { date = new Date(); } if(!(date instanceof Date)){ date=new Date(date); } return date.getMonth(); }; /** * 获取年份 * @param date * @returns {number} */ export const getFullYear = function(date) { if (!date){ date = new Date(); } if(!(date instanceof Date)){ date=new Date(date); } return date.getFullYear(); }; export const parseAntDate=function(value) { if (value) { value = new Date(value.replace(/-/g, '/')); } return value; } /** * 获取一月中的某一天 * @param date * @returns {number} */ export const getDay = function(date) { if (!date){ date = new Date(); } if(!(date instanceof Date)){ date=new Date(date); } return date.getDate(); }; export const equalDate=function(date1,date2){ var year1=getFullYear(date1);//获取年1 var year2 =getFullYear(date2);//获取年2 var month1=getMonth(date1);//获取月1 var month2 =getMonth(date2);//获取月2 var day1=getDay(date1);//获取天1 var day2=getDay(date2);//获取天1 return (year1==year2)&&(month1==month2)&&(day1==day2) } export const pattern=function(date,format) { if (date===undefined || date === null || !(date instanceof Date)) { return date; } var o = { "M+": date.getMonth() + 1, "d+": date.getDate(), "(H|h)+": date.getHours(), "m+": date.getMinutes(), "s+": date.getSeconds(), "q+": Math.floor((date.getMonth() + 3) / 3), "S": date.getMilliseconds() }; if (/(y+)/.test(format)) { format = format.replace(RegExp.$1, (date.getFullYear() + "").substr(4 - RegExp.$1.length)); } for (var k in o) { if (new RegExp("(" + k + ")").test(format)) { format = format.replace(RegExp.$1, RegExp.$1.length == 1 ? o[k] : ("00" + o[k]) .substr(("" + o[k]).length)); } } return format; } export default { isLeapYear, weekOfMonth, getMonth, getFullYear, getDay, parseAntDate, equalDate, pattern };