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 相关文章推荐
Locate a File Using a File Open Dialog Box
Jun 18 Javascript
javascript Onunload与Onbeforeunload使用小结
Dec 31 Javascript
JQuery给元素添加/删除节点比如select
Apr 02 Javascript
JS 日期比较大小的简单实例
Jan 13 Javascript
javascript实现3D切换焦点图
Oct 16 Javascript
轻松学习jQuery插件EasyUI EasyUI创建RSS Feed阅读器
Nov 30 Javascript
js给table赋值的实例代码
Oct 13 Javascript
Bootstrap select下拉联动(jQuery cxselect)
Jan 04 Javascript
学好js,这些js函数概念一定要知道【推荐】
Jan 19 Javascript
如何实现小程序tab栏下划线动画效果
May 18 Javascript
Vue可自定义tab组件用法实例
Oct 24 Javascript
vue data对象重新赋值无效(未更改)的解决方式
Jul 24 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
session 的生命周期是多长
2006/10/09 PHP
PHP 输出缓存详解
2009/06/20 PHP
通过5个php实例细致说明传值与传引用的区别
2012/08/08 PHP
PHP使用DirectoryIterator显示下拉文件列表的方法
2015/03/13 PHP
yii,CI,yaf框架+smarty模板使用方法
2015/12/29 PHP
PHP进阶学习之反射基本概念与用法分析
2019/06/18 PHP
js分解url参数(面向对象-极简主义法应用)
2012/08/09 Javascript
Js实现无刷新删除内容
2015/04/29 Javascript
MVVM模式中ViewModel和View、Model有什么区别?
2015/06/19 Javascript
每天一篇javascript学习小结(Boolean对象)
2015/11/12 Javascript
javascript html5 canvas实现可拖动省份的中国地图
2016/03/11 Javascript
基于JQuery打造无缝滚动新闻步骤详解
2016/03/31 Javascript
jquery easyui dataGrid动态改变排序字段名的方法
2017/03/02 Javascript
聊聊JS动画库 Velocity.js的使用
2018/03/13 Javascript
详解Vue CLI3 多页应用实践和源码设计
2018/08/30 Javascript
react 父子组件之间通讯props
2018/09/08 Javascript
vue实现简单学生信息管理
2020/05/30 Javascript
Vue将props值实时传递 并可修改的操作
2020/08/09 Javascript
浅谈Vue开发人员的7个最好的VSCode扩展
2021/01/20 Vue.js
详细探究Python中的字典容器
2015/04/14 Python
Python结巴中文分词工具使用过程中遇到的问题及解决方法
2017/04/15 Python
python使用fork实现守护进程的方法
2017/11/16 Python
django中的setting最佳配置小结
2017/11/21 Python
Python装饰器用法实例总结
2018/02/07 Python
使用Python制作缩放自如的圣诞老人(圣诞树)
2019/12/25 Python
Python timer定时器两种常用方法解析
2020/01/20 Python
终于搞懂了Keras中multiloss的对应关系介绍
2020/06/22 Python
Python使用Pygame绘制时钟
2020/11/29 Python
UGG雪地靴德国官网:UGG德国
2016/11/19 全球购物
欧洲最大的高尔夫零售商:American Golf
2019/09/02 全球购物
毕业生求职简历的自我评价
2013/10/07 职场文书
法人授权委托书范本
2014/04/04 职场文书
英语专业毕业生求职信
2014/05/24 职场文书
领导干部群众路线教育实践活动剖析材料
2014/10/10 职场文书
css3中2D转换之有趣的transform形变效果
2022/02/24 HTML / CSS
MySQL高级进阶sql语句总结大全
2022/03/16 MySQL