UNPKG

lunar-calendar-plus

Version:

lunar-calendar-plus是一个可自定义设置假期、节日;获取指定农历日期、节气、每日宜忌、天文历等灵活的js库。支持Typescript!

93 lines (83 loc) 1.72 kB
/* * @Description: * @version: * @Author: XJ * @Date: 2021-01-11 13:21:14 * @LastEditors: XJ * @LastEditTime: 2021-02-24 22:02:38 * @FilePath: \lunar-calendar\src\helper\baseDate.js */ "use strict"; var monthDay = new Array( "31", "", "31", "30", "31", "30", "31", "31", "30", "31", "30", "31" ); /** * 闰平年 * @param {Number} year */ function isLeapYear(year) { return (year % 4 == 0 && year % 100 != 0) || year % 400 == 0 ? true : false; } /** * 2月天数 * @param {Number} month */ const getDay = function (month) { return month == 1 ? (isLeapYear(month) ? "29" : "28") : monthDay[month]; }; /** * 对象覆盖 * @param {*} obj * @param {*} newObj */ const coverObj = function (curObj, coverObjs) { var i; for (i in coverObjs) { if (getType(coverObjs[i], 'Object') >= 0) { curObj[i] = coverObj(curObj[i], coverObjs[i]) } else { curObj[i] = coverObjs[i]; } } return curObj; } /** * 获取类型 * @param {Object|Array|String} data */ const getType = function (data, type) { return ["[object " + type + "]"].indexOf(Object.prototype.toString.call(data)); }; /** * 格式化时间 * @param {*} hours */ const hrsmin = function (hours) { var hrs, h, m, dum; hrs = Math.floor(hours * 60 + 0.5) / 60.0; h = Math.floor(hrs); m = Math.floor(60 * (hrs - h) + 0.5); if (h < 10) h = "0" + h; if (m < 10) m = "0" + m; dum = h + "时" + m + "分"; if (dum < 1000) dum = "0" + dum; if (dum < 100) dum = "0" + dum; if (dum < 10) dum = "0" + dum; return dum; }; module.exports = { getDay, getType, coverObj };