UNPKG

2.48 kBJavaScriptView Raw
1/**
2 * Created by Administrator on 2016/1/21.
3 */
4/*
5 时间格式化方法
6 param: str format
7 例子:('yyyy-MM-dd h:m:s');
8 */
9Date.prototype.format = function(format) {
10 var date = {
11 "M+": this.getMonth() + 1,
12 "d+": this.getDate(),
13 "h+": this.getHours(),
14 "m+": this.getMinutes(),
15 "s+": this.getSeconds(),
16 "q+": Math.floor((this.getMonth() + 3) / 3),
17 "S+": this.getMilliseconds()
18 };
19 if (/(y+)/i.test(format)) {
20 format = format.replace(RegExp.$1, (this.getFullYear() + '').substr(4 - RegExp.$1.length));
21 }
22 for (var k in date) {
23 if (new RegExp("(" + k + ")").test(format)) {
24 format = format.replace(RegExp.$1, RegExp.$1.length == 1 ? date[k] : ("00" + date[k]).substr(("" + date[k]).length));
25 }
26 }
27 return format;
28}
29
30function convertTimeToStr(val) {
31 var date = new Date(val);
32 var arr1 = [];
33 var arr2 = [];
34 arr1.push(_getStr(date.getFullYear())),
35 arr1.push(_getStr(date.getMonth() + 1)),
36 arr1.push(_getStr(date.getDate())),
37 arr2.push(_getStr(date.getHours())),
38 arr2.push(_getStr(date.getMinutes())),
39 arr2.push(_getStr(date.getSeconds()));
40
41 function _getStr(v) {
42 var s = v + '';
43 if (s.length == 1) {
44 return '0' + s;
45 } else {
46 return s;
47 }
48 }
49 return arr1.join('-') + ' ' + arr2.join(':');
50}
51
52/**
53 * 2015-07-12 10:10:10 ->Date对象
54 */
55function getDateByStr(str){
56 var arr = str.split(' ');
57 var arrA = arr[0].split('-'),
58 arrB = arr[1].split(':');
59 var date = new Date();
60 date.setMilliseconds(0);
61 date.setSeconds(arrB[2]),
62 date.setMinutes(arrB[1]),
63 date.setHours(arrB[0]),
64 date.setDate(arrA[2]),
65 date.setMonth(parseInt(arrA[1]) - 1),
66 date.setFullYear(arrA[0]);
67 return date;
68}
69
70/**
71 * 获得某一天的开始和结束时间
72 * @param date
73 */
74function getStartAndEndInDay(date){
75 var str = convertTimeToStr(date);
76 var newStr = str.substr(0, 10) + ' 00:00:00';
77 var startTime = getDateByStr(newStr);
78 var endTime = new Date(startTime.valueOf() + 24*60*60*1000);
79 return {
80 startTime: startTime,
81 endTime: endTime
82 };
83}
84
85module.exports = {
86 convertTimeToStr: convertTimeToStr,
87 getDateByStr: getDateByStr,
88 getStartAndEndInDay: getStartAndEndInDay
89}
\No newline at end of file