date.js 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  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. Date.prototype.Format = function(fmt) {
  7. var o = {
  8. "M+": this.getMonth() + 1, //月份
  9. "d+": this.getDate(), //日
  10. "h+": this.getHours(), //小时
  11. "m+": this.getMinutes(), //分
  12. "s+": this.getSeconds(), //秒
  13. "q+": Math.floor((this.getMonth() + 3) / 3), //季度
  14. "S": this.getMilliseconds() //毫秒
  15. };
  16. if (/(y+)/.test(fmt))
  17. 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))
  20. fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length)));
  21. return fmt;
  22. }
  23. export function excelDate(numb) {
  24. if( typeof(numb) == "number" ){
  25. const time = new Date((numb - 1) * 24 * 3600000 + 1);
  26. time.setYear(time.getFullYear() - 70)
  27. return time.Format("yyyy-MM-dd")
  28. }else{
  29. return numb
  30. }
  31. }
  32. export function curDate( ) {
  33. var d = new Date().Format("yyyy-MM-dd");
  34. return d.toLocaleString();
  35. }
  36. export function formatTimeToStr(times, pattern) {
  37. var d = new Date(times).Format("yyyy-MM-dd hh:mm:ss");
  38. if (pattern) {
  39. d = new Date(times).Format(pattern);
  40. }
  41. return d.toLocaleString();
  42. }
  43. export function toDatetime(times ) {
  44. if( !times) return "2020-01-01 00:00:00"
  45. var d = new Date(times).Format("yyyy-MM-dd hh:mm:ss");
  46. return d.toLocaleString();
  47. }
  48. export function toDate(times ) {
  49. if( !times) return "2020-01-01"
  50. var d = new Date(times).Format("yyyy-MM-dd");
  51. return d.toLocaleString();
  52. }
  53. export function toDateShow(times ) {
  54. if( !times) return "---"
  55. var d = new Date(times).Format("yyyy-MM-dd");
  56. return d.toLocaleString();
  57. }
  58. export function getDate( days ) {
  59. var d = new Date();
  60. d.setDate(d.getDate() + days);
  61. return toDate( d )
  62. }
  63. export function getStr( info ) {
  64. if( !info ) return '';
  65. return (''+info).trim();
  66. }