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
var formatTime = function (dateStr) {
  if (!dateStr) return '';
  
  var date;
  
  // 处理时间戳(数字)
  if (typeof dateStr === 'number') {
    date = getDate(dateStr);
  } 
  // 处理字符串格式的日期
  else if (typeof dateStr === 'string') {
    // 尝试直接解析
    date = getDate(dateStr);
  } 
  else {
    return '';
  }
  
  // 检查日期对象是否创建成功
  try {
    var year = date.getFullYear();
    var month = date.getMonth() + 1;
    var day = date.getDate();
    var hour = date.getHours();
    var minute = date.getMinutes();
    
    // 如果获取到的值是NaN,说明日期无效
    if (year !== year || month !== month || day !== day) {
      return '';
    }
    
    return year + '-' + formatNumber(month) + '-' + formatNumber(day) + ' ' + formatNumber(hour) + ':' + formatNumber(minute);
  } catch (e) {
    return '';
  }
}
 
var formatNumber = function(n) {
  n = n.toString();
  return n[1] ? n : '0' + n;
}
 
module.exports = {
  formatTime: formatTime
}