common.js 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101
  1. let getFormatDate = function (value) {
  2. if (value === undefined || value === "") {
  3. return '';
  4. }
  5. let str = value;
  6. if (parseInt(value) < 10) {
  7. str = '0' + value;
  8. }
  9. return str;
  10. }
  11. let getNowDate = function () {
  12. let d = new Date();
  13. let year = d.getFullYear();
  14. let month = d.getMonth() + 1;
  15. let day = d.getDate();
  16. return year + '-' + getFormatDate(month) + '-' + getFormatDate(day);
  17. }
  18. export function getAge(startDateStr, endDateStr) {
  19. //计算两个日期相差多少年
  20. endDateStr = endDateStr||getNowDate()
  21. let startDate = new Date(startDateStr);
  22. let endDate = new Date(endDateStr);
  23. let yearNum = endDate.getFullYear() - startDate.getFullYear()-1;
  24. //获取两个日期(月+日)部分
  25. let sStr = startDateStr.substring(5, 10);
  26. let eStr = getNowDate().substring(5, 10);
  27. //判断两个日期大小
  28. //判断是否过生日
  29. if (new Date(sStr) <= new Date(eStr)) {
  30. return yearNum + 1;
  31. }
  32. else {
  33. return yearNum;
  34. }
  35. }
  36. export function timeTrans({
  37. time,
  38. format
  39. }) {
  40. let timer = time || new Date();
  41. let date = new Date(timer);
  42. let obj = {
  43. Y: '',
  44. M: '',
  45. D: '',
  46. h: '',
  47. m: '',
  48. s: ''
  49. }
  50. obj.Y = date.getFullYear();
  51. obj.M = date.getMonth() + 1;
  52. obj.M = obj.M < 10 ? "0" + obj.M : obj.M;
  53. obj.D = date.getDate();
  54. obj.D = obj.D < 10 ? "0" + obj.D : obj.D;
  55. obj.h = date.getHours();
  56. obj.h = obj.h < 10 ? "0" + obj.h : obj.h;
  57. obj.m = date.getMinutes();
  58. obj.m = obj.m < 10 ? "0" + obj.m : obj.m;
  59. obj.s = date.getSeconds();
  60. obj.s = obj.s < 10 ? "0" + obj.s : obj.s;
  61. if (format) {
  62. let str = '';
  63. for (let index in format) {
  64. str += `${obj[format[index]] || format[index]}`;
  65. }
  66. return str;
  67. } else {
  68. return `${obj.Y}-${obj.M}-${obj.D}`
  69. }
  70. }
  71. (function(doc, win) {
  72. var docEl = doc.documentElement,
  73. resizeEvt = 'orientationchange' in window ? 'orientationchange' : 'resize',
  74. recalc = function() {
  75. var clientWidth = docEl.clientWidth;
  76. var fontSize = 20;
  77. docEl.style.fontSize = fontSize + 'px';
  78. var docStyles = getComputedStyle(docEl);
  79. var realFontSize = parseFloat(docStyles.fontSize);
  80. var scale = realFontSize / fontSize;
  81. console.log("realFontSize: " + realFontSize + ", scale: " + scale);
  82. fontSize = clientWidth / 667 * 20;
  83. if (isIphoneX()) fontSize = 19;
  84. fontSize = fontSize / scale;
  85. docEl.style.fontSize = fontSize + 'px';
  86. };
  87. // Abort if browser does not support addEventListener
  88. if (!doc.addEventListener) return;
  89. win.addEventListener(resizeEvt, recalc, false);
  90. doc.addEventListener('DOMContentLoaded', recalc, false);
  91. // iphoneX判断
  92. function isIphoneX() {
  93. return /iphone/gi.test(navigator.userAgent) && (win.screen.height == 812 && win.screen.width == 375)
  94. }
  95. })(document, window);