Jquery时间验证和转换工具小例子


Posted in Javascript onJuly 01, 2013
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 相关文章推荐
jquery异步请求实例代码
Jun 21 Javascript
js监听输入框值的即时变化onpropertychange、oninput
Jul 13 Javascript
Checbox的操作含已选、未选及判断代码
Nov 07 Javascript
js中replace的用法总结
Dec 27 Javascript
JavaScript格式化日期时间的方法和自定义格式化函数示例
Apr 04 Javascript
跟我学习javascript的for循环和for...in循环
Nov 18 Javascript
js通过classname来获取元素的方法
Nov 24 Javascript
JS常见疑难点分析之match,charAt,charCodeAt,map,search用法分析
Dec 25 Javascript
利用PM2部署node.js项目的方法教程
May 10 Javascript
JavaScript实现计算多边形质心的方法示例
Jan 31 Javascript
JavaScript中关于base64的一些事
May 06 Javascript
js实现轮播图效果 纯js实现图片自动切换
Aug 09 Javascript
JS 两日期相减,获得天数的小例子(兼容IE,FF)
Jul 01 #Javascript
js函数排序的实例代码
Jul 01 #Javascript
利用JS延迟加载百度分享代码,提高网页速度
Jul 01 #Javascript
jQuery提交多个表单的小例子
Jun 30 #Javascript
用jquery存取照片的具体实现方法
Jun 30 #Javascript
js正文内容高亮效果的实现方法
Jun 30 #Javascript
Jquery网页出现的乱码问题的三种解决方法
Jun 30 #Javascript
You might like
php简单获取文件扩展名的方法
2015/03/24 PHP
PHP 验证身份证是否合法的函数
2017/02/09 PHP
如何通过View::first使用Laravel Blade的动态模板详解
2017/09/21 PHP
Thinkphp 框架基础之源码获取、环境要求与目录结构分析
2020/04/27 PHP
JS 容错处理代码, 屏蔽错误信息
2021/03/09 Javascript
让getElementsByName适应IE和firefox的方法
2007/09/24 Javascript
javascript 四则运算精度修正函数代码
2010/05/31 Javascript
Jsonp 跨域的原理以及Jquery的解决方案
2011/06/27 Javascript
40款非常棒的jQuery 插件和制作教程(系列二)
2011/11/02 Javascript
jquery图片播放浏览插件prettyPhoto使用详解
2014/12/19 Javascript
JavaScript动态添加列的方法
2015/03/25 Javascript
原生js实现图片轮播特效
2015/12/18 Javascript
JavaScript实现经典排序算法之插入排序
2016/12/28 Javascript
vue页面使用阿里oss上传功能的实例(一)
2017/08/09 Javascript
Vue.js中使用iView日期选择器并设置开始时间结束时间校验功能
2018/08/12 Javascript
vue-music 使用better-scroll遇到轮播图不能自动轮播问题
2018/12/03 Javascript
Python3.5实现的三级菜单功能示例
2019/03/25 Python
python机器学习库scikit-learn:SVR的基本应用
2019/06/26 Python
Django Rest framework三种分页方式详解
2019/07/26 Python
numpy 声明空数组详解
2019/12/05 Python
Django 路由层URLconf的实现
2019/12/30 Python
双向RNN:bidirectional_dynamic_rnn()函数的使用详解
2020/01/20 Python
NumPy排序的实现
2020/01/21 Python
python要安装在哪个盘
2020/06/15 Python
Python测试框架:pytest学习笔记
2020/10/20 Python
我看到了用指针调用函数的不同语法形式
2014/07/16 面试题
ShellScript面试题一则-ShellScript编程
2014/06/24 面试题
AURALog面试题软件测试方面
2013/10/22 面试题
《桃林那间小木屋》教学反思
2014/05/01 职场文书
战友聚会策划方案
2014/06/13 职场文书
社保代办委托书怎么写
2014/10/06 职场文书
2014城乡环境综合治理工作总结
2014/12/19 职场文书
敬老院志愿者活动总结
2015/05/06 职场文书
新郎结婚感言
2015/07/31 职场文书
总结Python变量的相关知识
2021/06/28 Python
微信小程序 根据不同用户切换不同TabBar
2022/04/21 Javascript