javascript Date 操作日期

分手后的思念是犯贱 2024-04-20 08:46 134阅读 0赞
  1. javascript Date 操作日期
  2. /**
  3. * 功能:获取中文星期
  4. * 参数:date日期类型
  5. */
  6. function getChineseWeek(date) {
  7. var week = date.getDay();
  8. var chineseWeek = "";
  9. switch(week) {
  10. case 0: chineseWeek = "星期日"; break;
  11. case 1: chineseWeek = "星期一"; break;
  12. case 2: chineseWeek = "星期二"; break;
  13. case 3: chineseWeek = "星期三"; break;
  14. case 4: chineseWeek = "星期四"; break;
  15. case 5: chineseWeek = "星期五"; break;
  16. case 6: chineseWeek = "星期六"; break;
  17. }
  18. return chineseWeek;
  19. }
  20. /**
  21. * 功能:获取指定日期格式化后的前一天字符串
  22. * 参数:date 日期字符串
  23. * 参数:format 格式化字符串 yyyymmdd、yyyy-MM-dd、yyyy-MM-dd hh:mm:ss
  24. */
  25. function beforeDayByDate(date, format) {
  26. var oneDay = 1000 * 60 * 60 * 24;
  27. var retDate = "";
  28. if (typeof date != "string" || date.length != 8) {
  29. return;
  30. }
  31. var year = parseInt(date.substring(0, 4));
  32. var month = parseInt(date.substring(4, 6)) - 1;
  33. var day = parseInt(date.substring(6, 8));
  34. var _date = new Date();
  35. _date.setFullYear(year);
  36. _date.setMonth(month);
  37. _date.setDate(day);
  38. _date = new Date(_date.getTime() - oneDay);
  39. switch(format) {
  40. case "yyyy-MM-dd": retDate = getDate1(_date); break;
  41. case "yyyy-MM-dd hh:mm:ss": retDate = getDate2(_date); break;
  42. case "yyyymmdd": retDate = getDate3(_date); break;
  43. default: retDate = "date format error.";
  44. }
  45. return retDate;
  46. }
  47. /**
  48. * 功能:获取指定日期格式化后的后一天字符串
  49. * 参数:date 日期字符串
  50. * 参数:format 格式化字符串 yyyymmdd、yyyy-MM-dd、yyyy-MM-dd hh:mm:ss
  51. */
  52. function nextDayByDate(date, format) {
  53. var oneDay = 1000 * 60 * 60 * 24;
  54. var retDate = "";
  55. if (typeof date != "string" || date.length != 8) {
  56. return;
  57. }
  58. var year = parseInt(date.substring(0, 4));
  59. var month = parseInt(date.substring(4, 6)) - 1;
  60. var day = parseInt(date.substring(6, 8));
  61. var _date = new Date();
  62. _date.setFullYear(year);
  63. _date.setMonth(month);
  64. _date.setDate(day);
  65. _date = new Date(_date.getTime() + oneDay);
  66. switch(format) {
  67. case "yyyy-MM-dd": retDate = getDate1(_date); break;
  68. case "yyyy-MM-dd hh:mm:ss": retDate = getDate2(_date); break;
  69. case "yyyymmdd": retDate = getDate3(_date); break;
  70. default: retDate = "date format error.";
  71. }
  72. return retDate;
  73. }
  74. /**
  75. * 功能:获取指定日期格式化后的符串
  76. * 参数:date 日期字符串
  77. * 参数:format 格式化字符串 yyyymmdd、yyyy-MM-dd、yyyy-MM-dd hh:mm:ss
  78. */
  79. function formatDate(date, format) {
  80. var retDate = "";
  81. if (typeof date != "string" || date.length != 8) {
  82. return;
  83. }
  84. var year = parseInt(date.substring(0, 4));
  85. var month = parseInt(date.substring(4, 6)) - 1;
  86. var day = parseInt(date.substring(6, 8));
  87. var _date = new Date();
  88. _date.setFullYear(year);
  89. _date.setMonth(month);
  90. _date.setDate(day);
  91. switch(format) {
  92. case "yyyy-MM-dd": retDate = getDate1(_date); break;
  93. case "yyyy-MM-dd hh:mm:ss": retDate = getDate2(_date); break;
  94. case "yyyymmdd": retDate = getDate3(_date); break;
  95. default: retDate = "date format error.";
  96. }
  97. return retDate;
  98. }
  99. /**
  100. * 功能:当前日期前一天
  101. * 参数format格式有:
  102. * 1、yyyy-MM-dd
  103. * 2、yyyy-MM-dd hh:mm:ss
  104. * 3、yyyymmdd
  105. */
  106. function beforeDay(format) {
  107. var oneDay = 1000 * 60 * 60 * 24;
  108. var date = "";
  109. switch(format) {
  110. case "yyyy-MM-dd": date = getDate1(new Date(Date.now() - oneDay)); break;
  111. case "yyyy-MM-dd hh:mm:ss": date = getDate2(new Date(Date.now() - oneDay)); break;
  112. default: date = "date format error.";
  113. }
  114. return date;
  115. }
  116. /**
  117. * 功能:当前日期后一天
  118. * 参数format格式有:
  119. * 1、yyyy-MM-dd
  120. * 2、yyyy-MM-dd hh:mm:ss
  121. */
  122. function nextDay(format) {
  123. var oneDay = 1000 * 60 * 60 * 24;
  124. var date = "";
  125. switch(format) {
  126. case "yyyy-MM-dd": date = getDate1(new Date(Date.now() + oneDay)); break;
  127. case "yyyy-MM-dd hh:mm:ss": date = getDate2(new Date(Date.now() + oneDay)); break;
  128. default: date = "date format error.";
  129. }
  130. return date;
  131. }
  132. /**
  133. * 功能:根据指定格式获取格式化后的日期字符串
  134. * 参数format格式有:
  135. * 1、yyyy-MM-dd
  136. * 2、yyyy-MM-dd hh:mm:ss
  137. * 3、yyyymmdd
  138. */
  139. function getCurrentTime(format) {
  140. var date = "";
  141. switch(format) {
  142. case "yyyy-MM-dd": date = getDate1(new Date()); break;
  143. case "yyyy-MM-dd hh:mm:ss": date = getDate2(new Date()); break;
  144. case "yyyymmdd": date = getDate3(new Date()); break;
  145. default: date = "date format error.";
  146. }
  147. return date;
  148. }
  149. /**
  150. * 功能:返回yyyymmdd格式日期字符串
  151. * 参数:date Date类型
  152. */
  153. function getDate3(date) {
  154. var _date = "";
  155. var year = date.getFullYear();
  156. var month = addZero(date.getMonth() + 1);
  157. var day = addZero(date.getDate());
  158. _date = year + month + day;
  159. return _date;
  160. }
  161. /**
  162. * 功能:返回yyyy-MM-dd格式日期字符串
  163. * 参数:date Date类型
  164. */
  165. function getDate1(date) {
  166. var _date = "";
  167. var year = date.getFullYear();
  168. var month = addZero(date.getMonth() + 1);
  169. var day = addZero(date.getDate());
  170. _date = year + "-" + month + "-" + day;
  171. return _date;
  172. }
  173. /**
  174. * 功能:返回yyyy-MM-dd hh:mm:ss格式日期字符串
  175. * 参数:date Date类型
  176. */
  177. function getDate2(date) {
  178. var _date = "";
  179. var year = date.getFullYear();
  180. var month = addZero(date.getMonth() + 1);
  181. var day = addZero(date.getDate());
  182. var hours = addZero(date.getHours());
  183. var minute = addZero(date.getMinutes());
  184. var second = addZero(date.getSeconds());
  185. _date = year + "-" + month + "-" + day + " " + hours + ":" + minute + ":" + second;
  186. return _date;
  187. }
  188. /**
  189. * 功能:前补0
  190. * 参数:str 字符串类型
  191. */
  192. function addZero(str) {
  193. if ((typeof str) != "string") {
  194. str += "";
  195. }
  196. if (str.length < 2) {
  197. str = "0" + str;
  198. }
  199. return str;
  200. }

发表评论

表情:
评论列表 (有 0 条评论,134人围观)

还没有评论,来说两句吧...

相关阅读

    相关 javaSE的Date日期操作

    说到Date日期操作类,里面的大部分方法都已经是划了横线的了,划横线就是过时的方法,不建议使用了。 首先我们要了解的是,正真获得时间的方法是:System.currentTi