date.js 1.3 KB

123456789101112131415161718192021222324252627282930
  1. // 对Date的扩展,将 Date 转化为指定格式的String
  2. // 月(M)、日(d)、小时(h)、分(m)、秒(s)、季度(q) 可以用 1-2 个占位符,
  3. // 年(y)可以用 1-4 个占位符,毫秒(S)只能用 1 个占位符(是 1-3 位的数字)
  4. // (new Date()).Format("yyyy-MM-dd hh:mm:ss.S") ==> 2006-07-02 08:09:04.423
  5. // (new Date()).Format("yyyy-M-d h:m:s.S") ==> 2006-7-2 8:9:4.18
  6. // eslint-disable-next-line no-extend-native
  7. Date.prototype.Format = function(fmt) {
  8. var o = {
  9. 'M+': this.getMonth() + 1, // 月份
  10. 'd+': this.getDate(), // 日
  11. 'h+': this.getHours(), // 小时
  12. 'm+': this.getMinutes(), // 分
  13. 's+': this.getSeconds(), // 秒
  14. 'q+': Math.floor((this.getMonth() + 3) / 3), // 季度
  15. 'S': this.getMilliseconds() // 毫秒
  16. }
  17. if (/(y+)/.test(fmt)) { fmt = fmt.replace(RegExp.$1, (this.getFullYear() + '').substr(4 - RegExp.$1.length)) }
  18. for (var k in o) {
  19. if (new RegExp('(' + k + ')').test(fmt)) { fmt = fmt.replace(RegExp.$1, (RegExp.$1.length === 1) ? (o[k]) : (('00' + o[k]).substr(('' + o[k]).length))) }
  20. }
  21. return fmt
  22. }
  23. export function formatTimeToStr(times, pattern) {
  24. var d = new Date(times).Format('yyyy-MM-dd hh:mm:ss')
  25. if (pattern) {
  26. d = new Date(times).Format(pattern)
  27. }
  28. return d.toLocaleString()
  29. }