jQuery时间验证和转换为标准格式的时间格式


Posted in Javascript onMarch 06, 2017

最近整理文档发现一篇文章,可以将时间转换成标准格式的时间,发出来给大家参考一下。

var TimeObjectUtil;
/**
 * @title 时间工具类
 * @note 本类一律违规验证返回false
 * @author {boonyachengdu@gmail.com}
 * @date 2013-07-01
 * @formatter "2013-07-01 00:00:00" , "2013-07-01"
 */
TimeObjectUtil = {
  /**
   * 获取当前时间毫秒数
   */
  getCurrentMsTime : function() {
    var myDate = new Date();
    return myDate.getTime();
  },
  /**
   * 毫秒转时间格式
   */
  longMsTimeConvertToDateTime : function(time) {
    var myDate = new Date(time);
    return this.formatterDateTime(myDate);
  },
  /**
   * 时间格式转毫秒
   */
  dateToLongMsTime : function(date) {
    var myDate = new Date(date);
    return myDate.getTime();
  },
  /**
   * 格式化日期(不含时间)
   */
  formatterDate : function(date) {
    var datetime = date.getFullYear()
        + "-"// "年"
        + ((date.getMonth() + 1) > 10 ? (date.getMonth() + 1) : "0"
            + (date.getMonth() + 1))
        + "-"// "月"
        + (date.getDate() < 10 ? "0" + date.getDate() : date
            .getDate());
    return datetime;
  },
  /**
   * 格式化日期(含时间"00:00:00")
   */
  formatterDate2 : function(date) {
    var datetime = date.getFullYear()
        + "-"// "年"
        + ((date.getMonth() + 1) > 10 ? (date.getMonth() + 1) : "0"
            + (date.getMonth() + 1))
        + "-"// "月"
        + (date.getDate() < 10 ? "0" + date.getDate() : date
            .getDate()) + " " + "00:00:00";
    return datetime;
  },
  /**
   * 格式化去日期(含时间)
   */
  formatterDateTime : function(date) {
    var datetime = date.getFullYear()
        + "-"// "年"
        + ((date.getMonth() + 1) > 10 ? (date.getMonth() + 1) : "0"
            + (date.getMonth() + 1))
        + "-"// "月"
        + (date.getDate() < 10 ? "0" + date.getDate() : date
            .getDate())
        + " "
        + (date.getHours() < 10 ? "0" + date.getHours() : date
            .getHours())
        + ":"
        + (date.getMinutes() < 10 ? "0" + date.getMinutes() : date
            .getMinutes())
        + ":"
        + (date.getSeconds() < 10 ? "0" + date.getSeconds() : date
            .getSeconds());
    return datetime;
  },
  /**
   * 时间比较{结束时间大于开始时间}
   */
  compareDateEndTimeGTStartTime : function(startTime, endTime) {
    return ((new Date(endTime.replace(/-/g, "/"))) > (new Date(
        startTime.replace(/-/g, "/"))));
  },
  /**
   * 验证开始时间合理性{开始时间不能小于当前时间{X}个月}
   */
  compareRightStartTime : function(month, startTime) {
    var now = formatterDayAndTime(new Date());
    var sms = new Date(startTime.replace(/-/g, "/"));
    var ems = new Date(now.replace(/-/g, "/"));
    var tDayms = month * 30 * 24 * 60 * 60 * 1000;
    var dvalue = ems - sms;
    if (dvalue > tDayms) {
      return false;
    }
    return true;
  },
  /**
   * 验证开始时间合理性{结束时间不能小于当前时间{X}个月}
   */
  compareRightEndTime : function(month, endTime) {
    var now = formatterDayAndTime(new Date());
    var sms = new Date(now.replace(/-/g, "/"));
    var ems = new Date(endTime.replace(/-/g, "/"));
    var tDayms = month * 30 * 24 * 60 * 60 * 1000;
    var dvalue = sms - ems;
    if (dvalue > tDayms) {
      return false;
    }
    return true;
  },
  /**
   * 验证开始时间合理性{结束时间与开始时间的间隔不能大于{X}个月}
   */
  compareEndTimeGTStartTime : function(month, startTime, endTime) {
    var sms = new Date(startTime.replace(/-/g, "/"));
    var ems = new Date(endTime.replace(/-/g, "/"));
    var tDayms = month * 30 * 24 * 60 * 60 * 1000;
    var dvalue = ems - sms;
    if (dvalue > tDayms) {
      return false;
    }
    return true;
  },
  /**
   * 获取最近几天[开始时间和结束时间值,时间往前推算]
   */
  getRecentDaysDateTime : function(day) {
    var daymsTime = day * 24 * 60 * 60 * 1000;
    var yesterDatsmsTime = this.getCurrentMsTime() - daymsTime;
    var startTime = this.longMsTimeConvertToDateTime(yesterDatsmsTime);
    var pastDate = this.formatterDate2(new Date(startTime));
    var nowDate = this.formatterDate2(new Date());
    var obj = {
      startTime : pastDate,
      endTime : nowDate
    };
    return obj;
  },
  /**
   * 获取今天[开始时间和结束时间值]
   */
  getTodayDateTime : function() {
    var daymsTime = 24 * 60 * 60 * 1000;
    var tomorrowDatsmsTime = this.getCurrentMsTime() + daymsTime;
    var currentTime = this.longMsTimeConvertToDateTime(this.getCurrentMsTime());
    var termorrowTime = this.longMsTimeConvertToDateTime(tomorrowDatsmsTime);
    var nowDate = this.formatterDate2(new Date(currentTime));
    var tomorrowDate = this.formatterDate2(new Date(termorrowTime));
    var obj = {
      startTime : nowDate,
      endTime : tomorrowDate
    };
    return obj;
  },
  /**
   * 获取明天[开始时间和结束时间值]
   */
  getTomorrowDateTime : function() {
    var daymsTime = 24 * 60 * 60 * 1000;
    var tomorrowDatsmsTime = this.getCurrentMsTime() + daymsTime;
    var termorrowTime = this.longMsTimeConvertToDateTime(tomorrowDatsmsTime);
    var theDayAfterTomorrowDatsmsTime = this.getCurrentMsTime()+ (2 * daymsTime);
    var theDayAfterTomorrowTime = this.longMsTimeConvertToDateTime(theDayAfterTomorrowDatsmsTime);
    var pastDate = this.formatterDate2(new Date(termorrowTime));
    var nowDate = this.formatterDate2(new Date(theDayAfterTomorrowTime));
    var obj = {
      startTime : pastDate,
      endTime : nowDate
    };
    return obj;
  }
};

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
求解开jscript.encode代码的asp函数
Feb 28 Javascript
JavaScript中出现乱码的处理心得
Dec 24 Javascript
浅谈Javascript面向对象编程
Nov 15 Javascript
jQuery版仿Path菜单效果
Dec 15 Javascript
js返回上一页并刷新代码整理
Dec 21 Javascript
使用js的replace()方法查找字符示例代码
Oct 28 Javascript
jquery easyui combobox模糊过滤(示例代码)
Nov 30 Javascript
jquery 选取方法都有哪些
May 18 Javascript
jQuery仿淘宝网产品品牌隐藏与显示效果
Sep 01 Javascript
js如何准确获取当前页面url网址信息
Sep 13 Javascript
微信小程序实现跟随菜单效果和循环嵌套加载数据
Nov 21 Javascript
vue中的数据绑定原理的实现
Jul 02 Javascript
Bootstrap导航中表单简单实现代码
Mar 06 #Javascript
基于JS实现仿百度百家主页的轮播图效果
Mar 06 #Javascript
JS字符串长度判断,超出进行自动截取的实例(支持中文)
Mar 06 #Javascript
Bootstrap导航简单实现代码
Mar 06 #Javascript
Bootstrap栅格系统简单实现代码
Mar 06 #Javascript
javascript DOM的详解及实例代码
Mar 06 #Javascript
vue + socket.io实现一个简易聊天室示例代码
Mar 06 #Javascript
You might like
如何在smarty中增加类似foreach的功能自动加载数据
2013/06/26 PHP
Yii2.0 模态弹出框+ajax提交表单
2016/05/22 PHP
JavaScript 编程引入命名空间的方法与代码
2007/08/13 Javascript
input的focus方法使用
2010/03/13 Javascript
Extjs根据条件设置表格某行背景色示例
2014/07/23 Javascript
AngularJS 作用域详解及示例代码
2016/08/17 Javascript
vue.js入门教程之基础语法小结
2016/09/01 Javascript
JavaScript之class继承_动力节点Java学院整理
2017/07/03 Javascript
原生js实现简单的模态框示例
2017/09/08 Javascript
jquery 一键复制到剪切板的实例
2017/09/20 jQuery
微信小程序wx.request实现后台数据交互功能分析
2017/11/25 Javascript
vue中各种通信传值方式总结
2019/02/14 Javascript
Vue+Element实现表格编辑、删除、以及新增行的最优方法
2019/05/28 Javascript
JS数组方法concat()用法实例分析
2020/01/18 Javascript
Node.js中的异步生成器与异步迭代详解
2021/01/31 Javascript
[01:53]3.19 DOTA2发布会 现场精彩Coser表演
2014/03/25 DOTA
python处理PHP数组文本文件实例
2014/09/18 Python
python使用PyGame播放Midi和Mp3文件的方法
2015/04/24 Python
Python备份目录及目录下的全部内容的实现方法
2016/06/12 Python
Python学习入门之区块链详解
2017/07/25 Python
关于torch.optim的灵活使用详解(包括重写SGD,加上L1正则)
2020/02/20 Python
python实现无边框进度条的实例代码
2020/12/30 Python
CSS3的Flexbox布局的简明入门指南
2016/04/08 HTML / CSS
CSS3 实现弹跳的小球动画
2020/10/26 HTML / CSS
HTML5 微格式和相关的属性名称
2010/02/10 HTML / CSS
荷兰和比利时时尚鞋店:Van Dalen
2018/04/23 全球购物
WiFi云数码相框:Nixplay
2018/07/05 全球购物
ANINE BING官方网站:奢华的衣橱基本款和时尚永恒的单品
2019/11/26 全球购物
Java模拟试题
2014/11/10 面试题
自荐信需注意事项
2014/01/25 职场文书
小学数学教学经验交流材料
2014/05/22 职场文书
个人公司授权委托书范本
2014/10/12 职场文书
会议主持词结束语
2015/07/03 职场文书
机械原理课程设计心得体会
2016/01/15 职场文书
详解CSS伪元素的妙用单标签之美
2021/05/25 HTML / CSS
SQL Server #{}可以防止SQL注入
2022/05/11 SQL Server