dateTimeTool.js
3.2 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
/** 时间工具类*/
var DateTimeTool = function () {
var jsd = [];
var initSJD = function (map) {
jsd = map;
};
// 数字格式转化为时间格式
var calculateHours = function (time) {
if(!time)
return;
var h,m;
h = Math.floor(time);
m = Math.round((time % 1) * 60);
return h+':'+m;
};
/**
* @discription : (TODO) 字符串转时间对象
*
* @params : 具有一定格式的时间字符串
*
* @return : 返回一个中国标准时间点
*
**/
var getDateTime = function(time) {
var dateTime = new Date();
if(time !=null && time !='' && typeof(time) !='undefined') {
timeArr = time.split(':');
dateTime.setHours(parseInt(timeArr[0]));
dateTime.setMinutes(parseInt(timeArr[1]));
dateTime.setSeconds(0);
// 在0-3点之间(包括0和3)的时间都默认为下一天的时间
if(parseInt(timeArr[0]) <= 3 && parseInt(timeArr[0]) >= 0)
dateTime.setDate(dateTime.getDate() +1);
}
return dateTime;
};
/**
* @discription : (TODO) 获取时间格式[00:00]
*
* @params : [startTime--时间对象(任意时间对象:字符串、时间戳、时间对象)]
*
* @return : 返回字符串。这里返回的是一个时间格式的字符串[00:00]
**/
var getHHmmStr = function(time) {
var date = new Date(time);
// == '00' ? '24' :(startTime.getHours()<10? '0' + startTime.getHours() : startTime.getHours()))
return (date.getHours()<10? '0' + date.getHours() : date.getHours())
+':'
+(date.getMinutes()<10? '0' + date.getMinutes() : date.getMinutes());
};
// 判断时间在什么时间段段内
var judgmentTimeQuantum = function (t) {
if(t <= getDateTime(jsd[0].end))
return 0;
else if(t > getDateTime(jsd[1].start) && t <= getDateTime(jsd[1].end))
return 1;
else if(t > getDateTime(jsd[2].start) && t <= getDateTime(jsd[2].end))
return 2;
else if(t > getDateTime(jsd[3].start) && t <= getDateTime(jsd[3].end))
return 3;
else if(t > getDateTime(jsd[4].start))
return 4;
};
// 8:31-16:00专用
var judgmentTimeQuantum1 = function (t) {
var start = DateTimeTool.getDateTime(jsd[2].start);
if(t > start && t <= start.setHours(start.getHours() + 2))
return 1;
else if(t > start.setHours(start.getHours() + 2) && t <= start.setHours(start.getHours() + 4))
return 2;
else if(t > start.setHours(start.getHours() + 4) && t <= start.setHours(start.getHours() + 6))
return 2;
else if(t > start.setHours(start.getHours() + 6) && t <= DateTimeTool.getDateTime(jsd[2].end))
return 1;
};
return{
initSJD : initSJD,
calculateHours : calculateHours,
getDateTime : getDateTime,
getHHmmStr : getHHmmStr,
judgmentTimeQuantum : judgmentTimeQuantum,
judgmentTimeQuantum1 : judgmentTimeQuantum1
}
}();