获取date类型

var type = _xAxis[0].split(/-|:|\s/).length;

按时间粒度获取date的时间差

    function getDateDiffByType(newDate,endDate,type){
newDate = new Date(newDate) == 'Invalid Date' ? newDate+':00' : newDate;
endDate = new Date(endDate) == 'Invalid Date' ? endDate+':00' : endDate;
var dateDiff = new Date(endDate)-new Date(newDate);
var _date = new Date(dateDiff);
var year = _date.getFullYear() - 1970;
var month = _date.getMonth();
switch (type) {
case 1: {
return year;
break;
}
case 2: {
return month+year*12;
break;
}
case 3: {
return dateDiff/1000/60/60/24;
break;
}
case 4: {
return dateDiff/1000/60/60;
break;
}
case 5: {
return dateDiff/1000/60;
break;
}
case 6: {
return dateDiff/1000;
break;
}
}
} 

附:date按时间粒度格式化

function dateFmtByType( _date,_type) {
_date = new Date(_date) == 'Invalid Date' ? _date+':00' : _date;//"2017-02-12 12"是Invalid Date
var date = new Date(_date);
var fmt = ["yyyy","yyyy-MM","yyyy-MM-dd","yyyy-MM-dd hh","yyyy-MM-dd hh:mm","yyyy-MM-dd hh:mm:ss"];
return date.dateFormat(fmt[_type-1]);
}

附:date格式化代码("yyyy-MM-dd hh:mm:ss")

Date.prototype.dateFormat = function(fmt)
{ //author: meizz
var o = {
"M+" : this.getMonth()+1, //月份
"d+" : this.getDate(), //日
"h+" : this.getHours(), //小时
"m+" : this.getMinutes(), //分
"s+" : this.getSeconds(), //秒
"q+" : Math.floor((this.getMonth()+3)/3), //季度
"S" : this.getMilliseconds() //毫秒
};
if(/(y+)/.test(fmt))
fmt=fmt.replace(RegExp.$1, (this.getFullYear()+"").substr(4 - RegExp.$1.length));
for(var k in o)
if(new RegExp("("+ k +")").test(fmt))
fmt = fmt.replace(RegExp.$1, (RegExp.$1.length==1) ? (o[k]) : (("00"+ o[k]).substr((""+ o[k]).length)));
return fmt;
}

  

最新文章

  1. log4j相对路径找不到,处理方法
  2. HC-05初探
  3. Radar Installation
  4. Java的加密与解密
  5. HDOJ 2167 Pebbles (状态压缩dp)
  6. replace()、replaceFirst()和replaceAll()的区别
  7. List<Map<String,String>>操作(遍历,比较)
  8. Windows8 正式版最简单的去除桌面水印方法
  9. 2014.7.8模拟赛【笨笨当粉刷匠】|bzoj1296 [SCOI]粉刷匠
  10. pl/sql连接远程服务器
  11. windows程序设计读书笔记4——字符显示3
  12. linux c socket programming
  13. 线上Java程序导致服务器CPU占用率过高的问题排除过程
  14. 自定义progressDialog(数据加载框)的实现
  15. ubuntu16.04安装中文输入法
  16. Sql Server登录失败问题
  17. Python字典的使用与处理
  18. Hyper-V、Esxi虚机还原,远程重启(关机)
  19. set_union和set_intersection
  20. mysql 添加外键详解

热门文章

  1. 浅入深出Java输入输出流主线知识梳理
  2. 文献阅读报告 - Situation-Aware Pedestrian Trajectory Prediction with Spatio-Temporal Attention Model
  3. Restful设计相关
  4. mysql的常见面试问题
  5. UML-架构分析-阶段
  6. Django2.0——模板渲染(一)
  7. vue多选验证
  8. 4418之Android Eclipse导入应用程序在开发板上调试
  9. 关于Java自动拆箱装箱中的缓存问题
  10. flask框架-下