H.js 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. /**
  2. * Created by Ryn on 2016/8/6.
  3. * 帮助函数
  4. */
  5. // 一些私有变量
  6. // 一些公有变量、函数
  7. /**
  8. *
  9. * 判断这一年是闰年还是平年
  10. * @param year {String/Number} 年份
  11. * @returns {boolean}
  12. */
  13. export const isLeapYear = function(year) {
  14. if (!typeof +year === 'number') {
  15. throw new Error("年份格式不正确");
  16. }
  17. if (+year < 1790) {
  18. throw new Error("年份不能低于1790年");
  19. }
  20. // 计算闰年方法
  21. // 1.能被4整除而不能被100整除
  22. // 2.能被400整除
  23. return (year % 4 === 0 && year % 100 !== 0) || (year % 400 === 0);
  24. };
  25. /**
  26. * 返回月份中的第一天是星期几
  27. * @returns {number}
  28. * 1 星期一
  29. * 2 星期二
  30. * 3 星期三
  31. * 4 星期四
  32. * 5 星期五
  33. * 6 星期六
  34. * 0 星期天
  35. */
  36. export const weekOfMonth = function(date) {
  37. if (!date) date = new Date();
  38. return new Date(getFullYear(date), getMonth(date), 1).getDay();
  39. };
  40. /**
  41. * 获取月份
  42. * @param date
  43. * @returns {*|number}
  44. */
  45. export const getMonth = function(date) {
  46. if (!date) date = new Date();
  47. return date.getMonth();
  48. };
  49. /**
  50. * 获取年份
  51. * @param date
  52. * @returns {number}
  53. */
  54. export const getFullYear = function(date) {
  55. if (!date) date = new Date();
  56. return date.getFullYear();
  57. };
  58. /**
  59. * 获取一月中的某一天
  60. * @param date
  61. * @returns {number}
  62. */
  63. export const getDate = function(date) {
  64. if (!date) date = new Date();
  65. return date.getDate();
  66. };
  67. export default {
  68. isLeapYear,
  69. weekOfMonth,
  70. getMonth,
  71. getFullYear,
  72. getDate
  73. };