comJs.js 3.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. const common = {
  2. a: 123,
  3. //简单时间格式化
  4. //使用方法 供新手参考 :
  5. // 在vue文件中 import { dateFormat } from '@/js_sdk/common.js'
  6. //let date = new Date();
  7. // dateFormat("YYYY-mm-dd HH:mm",date)
  8. fmt: (fmt, date) => {
  9. let ret;
  10. const opt = {
  11. "Y+": date.getFullYear().toString(), // 年
  12. "m+": (date.getMonth() + 1).toString(), // 月
  13. "d+": date.getDate().toString(), // 日
  14. "H+": date.getHours().toString(), // 时
  15. "M+": date.getMinutes().toString(), // 分
  16. "S+": date.getSeconds().toString() // 秒
  17. // 有其他格式化字符需求可以继续添加,必须转化成字符串
  18. };
  19. for (let k in opt) {
  20. ret = new RegExp("(" + k + ")").exec(fmt);
  21. if (ret) {
  22. fmt = fmt.replace(ret[1], (ret[1].length == 1) ? (opt[k]) : (opt[k].padStart(ret[1].length, "0")))
  23. };
  24. };
  25. return fmt;
  26. },
  27. //datetime 格式为2019-11-22 12:23:59样式
  28. timeago: (datetime) => { //dateTimeStamp是一个时间毫秒,注意时间戳是秒的形式,在这个毫秒的基础上除以1000,就是十位数的时间戳。13位数的都是时间毫秒。
  29. var dateTimeStamp = new Date(datetime.replace(/ /, 'T')).getTime() - 8 * 60 * 60 * 1000; //这里要减去中国的时区8小时
  30. var minute = 1000 * 60; //把分,时,天,周,半个月,一个月用毫秒表示
  31. var hour = minute * 60;
  32. var day = hour * 24;
  33. var week = day * 7;
  34. var halfamonth = day * 15;
  35. var month = day * 30;
  36. var now = new Date().getTime(); //获取当前时间毫秒
  37. var diffValue = now - dateTimeStamp; //时间差
  38. if (diffValue < 0) {
  39. console.log("diffValue<0", datetime, dateTimeStamp, now, diffValue);
  40. return '刚刚';
  41. }
  42. var minC = diffValue / minute; //计算时间差的分,时,天,周,月
  43. var hourC = diffValue / hour;
  44. var dayC = diffValue / day;
  45. var weekC = diffValue / week;
  46. var monthC = diffValue / month;
  47. var result = "2";
  48. if (monthC >= 1 && monthC <= 3) {
  49. result = " " + parseInt(monthC) + "月前"
  50. } else if (weekC >= 1 && weekC <= 3) {
  51. result = " " + parseInt(weekC) + "周前"
  52. } else if (dayC >= 1 && dayC <= 6) {
  53. result = " " + parseInt(dayC) + "天前"
  54. } else if (hourC >= 1 && hourC <= 23) {
  55. result = " " + parseInt(hourC) + "小时前"
  56. } else if (minC >= 1 && minC <= 59) {
  57. result = " " + parseInt(minC) + "分钟前"
  58. } else if (diffValue >= 0 && diffValue <= minute) {
  59. result = "刚刚"
  60. } else {
  61. var datetime = new Date();
  62. datetime.setTime(dateTimeStamp);
  63. var Nyear = datetime.getFullYear(); {}
  64. var Nmonth = datetime.getMonth() + 1 < 10 ? "0" + (datetime.getMonth() + 1) : datetime.getMonth() + 1;
  65. var Ndate = datetime.getDate() < 10 ? "0" + datetime.getDate() : datetime.getDate();
  66. var Nhour = datetime.getHours() < 10 ? "0" + datetime.getHours() : datetime.getHours();
  67. var Nminute = datetime.getMinutes() < 10 ? "0" + datetime.getMinutes() : datetime.getMinutes();
  68. var Nsecond = datetime.getSeconds() < 10 ? "0" + datetime.getSeconds() : datetime.getSeconds();
  69. result = Nyear + "-" + Nmonth + "-" + Ndate
  70. }
  71. return result;
  72. },
  73. }
  74. export default common