1 /**
2 * 获取当前时间的本地格式字符串
3 * @returns {String}
4 */
5 Date.prototype.getLocaleTimeStr = function(){
6 return this.toLocaleTimeString();
7 };
8
9 /**
10 * 获取当前时间的本地格式字符串,只保留数字部分
11 * @returns {String}
12 */
13 Date.prototype.getPureLocaleTimeStr = function(){
14 return this.toLocaleTimeString().replace(/^\D*/, '');
15 };
16
17 /**
18 * 获取间隔几秒的时间
19 * @param gap 数字
20 * @returns {Date}
21 */
22 Date.prototype.getGapsSecondLocaleTimeStr = function(gap){
23 //return new Date(this - gap * 1000);
24 }
25
26 /**
27 * 获取间隔几分钟的时间
28 * @param gap 数字
29 * @returns {Date}
30 */
31 Date.prototype.getGapsMinuteLocaleTimeStr = function(gap){
32 //return new Date(this - gap * 60 * 1000);
33 };
34 /**
35 * 获取七天前的日期
36 * @returns{String}
37 */
38 Date.prototype.getPreSevenDate = function(){
39 this.setDate(this.getDate()-7);
40 return this.Format("yyyy-MM-dd hh:mm:ss");
41 };
42 /**
43 * 获取某一天的日期
44 * @param {number} day 多少天前/后的日期
45 * @returns {String}
46 */
47 Date.prototype.getSomeDayDate = function(day){
48 this.setDate(this.getDate() + day);
49 return this.Format("yyyy-MM-dd hh:mm:ss");
50 };
51 /**
52 * 获取当前时间(调用方法:new Date().Format("yyyy-MM-dd hh:mm:ss"))
53 * @param fmt
54 * @returns {String}/2016-01-01 00:00:00/
55 */
56 Date.prototype.Format = function(fmt) {
57 var o = {
58 "M+" : this.getMonth() + 1,
59 "d+" : this.getDate(),
60 "h+" : this.getHours(),
61 "m+" : this.getMinutes(),
62 "s+" : this.getSeconds(),
63 "q+" : Math.floor((this.getMonth() + 3) / 3),
64 "S" : this.getMilliseconds()
65 };
66 if (/(y+)/.test(fmt))
67 fmt = fmt.replace(RegExp.$1, (this.getFullYear() + "")
68 .substr(4 - RegExp.$1.length));
69 for ( var k in o)
70 if (new RegExp("(" + k + ")").test(fmt))
71 fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k])
72 : (("00" + o[k]).substr(("" + o[k]).length)));
73 return fmt;
74 };
75
76 /**
77 * 日期操作相关方法
78 */
79 var myDateUtil = {
80 /**
81 * 设置日期(0为今天,-1为昨天,以此类推)
82 * @param AddDayCount
83 * @returns {String}/2016-01-01/
84 */
85 GetDateStr:function(AddDayCount){
86 var dd = new Date();
87 dd.setDate(dd.getDate()+AddDayCount);//获取AddDayCount天后的日期
88 var y = dd.getFullYear();
89 var m = dd.getMonth()+1;//获取当前月份的日期
90 if(m<10){
91 m = '0'+m;
92 }
93 var d = dd.getDate();
94 if(d<10){
95 d = '0'+d;
96 }
97
98 return y+"-"+m+"-"+d;
99 },
100 /**
101 * 根据一个日期查找另一个日期
102 * @param {} theDay:2016-04-20
103 * @param {} AddDayCount:(-1为前一天,1为后一天,0不变,以此类推)
104 * @return {String}
105 */
106 findDayByDay:function(theDay,AddDayCount){
107 var formatDay = new Date(theDay);
108 formatDay.setDate(formatDay.getDate()+AddDayCount);//获取AddDayCount天后的日期
109 var y = formatDay.getFullYear();
110 var m = formatDay.getMonth()+1;//获取当前月份的日期
111 if(m<10){
112 m = '0'+m;
113 }
114 var d = formatDay.getDate();
115 if(d<10){
116 d = '0'+d;
117 }
118
119 return y+"-"+m+"-"+d;
120 },
121 /**
122 * 返回距 1970 年 1 月 1 日之间的毫秒数(可用于比较时间大小)
123 * @param {} Date 格式为:yyyy-mm-dd
124 */
125 formatTimesFromDate:function(Date){
126 var arr = Date.split("-");
127 var newDate = new Date(arr[0],arr[1],arr[2]);
128 var resultDate = newDate.getTime();
129 return resultDate;
130 }
131 }