`

js各种日期处理收集

    博客分类:
  • js
阅读更多
扩展日期功能

1.格式化日期处理

//yyyy-MM-dd hh:mm:ss (日期格式
Date.prototype.format =function(format)
{
	var o = {
	"M+" : this.getMonth()+1, //month
	"d+" : this.getDate(), //day
	"h+" : this.getHours(), //hour
	"m+" : this.getMinutes(), //minute
	"s+" : this.getSeconds(), //second
	"q+" : Math.floor((this.getMonth()+3)/3), //quarter
	"S" : this.getMilliseconds() //millisecond
	}
	if(/(y+)/.test(format)) format=format.replace(RegExp.$1,
	(this.getFullYear()+"").substr(4- RegExp.$1.length));
	for(var k in o)if(new RegExp("("+ k +")").test(format))
	format = format.replace(RegExp.$1,
	RegExp.$1.length==1? o[k] :
	("00"+ o[k]).substr((""+ o[k]).length));
	return format;
}

//字符串转日期格式,strDate要转为日期格式的字符串
Date.prototype.getDate =function(strDate) {
      var date = eval('new Date(' + strDate.replace(/\d+(?=-[^-]+$)/,
      function (a) { return parseInt(a, 10) - 1; }).match(/\d+/g) + ')');
      return date;
}

var d =new Date().format('yyyy-MM-dd');   //对当前日期处理格式化
var tempdate = '2013-04-03 12:34:33';     //对字符串格式日期处理,需要转换为反斜杠
//第一行里的replace(/-/g,"/")一定要有,不然ie7用Date().parse("2011-09-10 01:40:14")是返回NaN
var tempdateObj = new Date(tempdate.replace(/-/g,'/')); //需要转换为反斜杠“/-/g”表示全匹配




js 得到当前日期的前一天日期
var date =new Date();
var beforeDate = date.getTime() - 24 * 60 * 60 * 1000;//前一天日期


JavaScript中日期的比较
1.在JavaScript中比较两个Date日期对象的大小时,可以直接使用运行符进行

function compareDate(strDate1,strDate2)
{
      var date1 = new Date(strDate1.replace(/\-/g, "\/"));
      var date2 = new Date(strDate2.replace(/\-/g, "\/"));
      return date1-date2; //返回的是毫秒数
//date1 > date2   返回的是正毫秒数
//date1 < date2   返回的是负毫秒数
//date1 = date2   返回的是0毫秒数
 }


 ///** 比较 eg:**/

function doCompare(){

       var strDate1 = document.getElementById("strDate1").value;

       var strDate2 = document.getElementById("strDate2").value;

       var result = compareDate(strDate1,strDate2);
				
       if ( result>0 ) {

             alert("strDate1晚于strDate2");

        }else if( result<0 ){

             alert("strDate1早于strDate2");
        }else if ( result==0 ){

             alert("strDate1等于strDate2");
        }
}

另一种方法日期比较是通过转换毫秒来比较的
eg:
var date = new Date();
//date.getTime();返回 1970 年 1 月 1 日至今的毫秒数。
long time = date.getTime();


js 日期合法验证
//验证是否合法日期   
function CheckDate(strDate){   
   if(strDate.length>0){   
        //匹配格式 yyyy-MM-dd hh:mm:ss || yyyy/MM/dd hh:mm:ss
        var reg=/^(\d{4})(-|\/)(\d{1,2})\2(\d{1,2}) (\d{1,2}):(\d{1,2}):(\d{1,2})$/;
        if(!reg.test(strDate)){
	    return false;
        }else{ 
	    return true;
        }
    }
}   




可参考其他文章

下面是对日期的各种处理可参考哦
http://www.douban.com/note/239144534/
分享到:
评论

相关推荐

    5个最佳的Javascript日期处理类库分享

    今天这里我们收集了5个最佳的日期处理函数类库,希望对于大家有帮助,如果你喜欢我们的文章,请大家给我们留言,谢谢!1. XDate 这个类库是javascript本地日期对象的封装,提供了加强的方法来帮助你解析,格式化和...

    javascript-challenge:JavaScript家庭作业-JavaScript和DOM操作

    不过有一个陷阱……我们在网页上只使用纯JavaScript,HTML和CSS以及D3.js。 它们是唯一可以信任的编码语言。 你可以处理...对吗? 地球需要知道我们所发现的! 级别1:自动表格和日期搜索(必需) 创建一个基本...

    REACT-REDUX-TMDB-MovieDB:使用TMDB API结合React,Redux,Router-DOM前端接口作为项目的语言,以为网站提供动力,该网站展示了根据类型,受欢迎程度,评分和上传日期排序的各种电影

    基于 Web 的应用程序使用 TMDB API 来收集和处理有关各种电影的信息。 内置 HTML、CSS JavaScript React.js React路由器 Redux.js Redux-Thunk NPM Webpack 已测试与最新版本的兼容性 火狐(版本: 76.0.1 (64-...

    javascript-practice:javascript和DOM操作

    不过有一个陷阱……我们在网页上只使用纯JavaScript,HTML和CSS以及D3.js。 它们是唯一可以信任的编码语言。 你可以处理...对吗? 地球需要知道我们所发现的! 你的任务 级别1:自动表格和日期搜索(必需) 创建...

    常用JavaScript正则表达式汇编与示例详解

    目前收集整理了21个常用的javaScript正则表达式,其中包括用户名、密码强度、整数、数字、电子邮件地址(Email)、手机号码、身份证号、URL地址、 IP地址、 十六进制颜色、 日期、 微信号、车牌号、中文正则等。...

    用户名、密码等15个常用的js正则表达式

    收集整理了15个常用的javaScript正则表达式,其中包括用户名、密码强度、整数、数字、电子邮件地址(Email)、手机号码、身份证号、URL地址、 IPv4地址、 十六进制颜色、 日期、 QQ号码、 微信号、车牌号、中文正则...

    JavaScript简介

    不过有一个陷阱……我们在网页上只使用纯JavaScript,HTML和CSS以及D3.js。 它们是唯一可以信任的编码语言。 你可以处理...对吗? 地球需要知道我们所发现的!你的任务级别1:自动表格和日期搜索创建一个基本HTML...

    JavaScript_project

    Javascript专案背景陆地上的威胁已经到了地球,我们在ALIENS-R-REAL收集了所有我们可以证明的目击者报告! 我们现在需要做的就是将这些信息在线发布,以供全世界查看,然后此事将最终平息。 但是,只有一个小问题......

    javascript-challenge

    不过有一个陷阱……我们在网页上只使用纯JavaScript,HTML和CSS以及D3.js。 它们是唯一可以信任的编码语言。 你可以处理...对吗? 地球需要知道我们所发现的!级别1:自动表格和日期搜索(必需) 创建一个基本HTML...

    [removed]DataScience Bootcamp JavaScript作业

    不过有一个陷阱……我们在网页上只使用纯JavaScript,HTML和CSS以及D3.js。 它们是唯一可以信任的编码语言。 你可以处理...对吗? 地球需要知道我们所发现的! 你的任务 级别1:自动表格和日期搜索 创建一个基本...

    李兴华 java_web开发实战经典 源码 完整版收集共享

    13.4.5、日期时间格式化标签 13.4.6、设置时区 13.5、SQL标签库 13.5.1、 13.5.2、数据库操作标签 13.5.3、事务处理 13.6、XML标签库 13.6.1、XPath简介 13.6.2、标签 13.6.3、标签 13.6.4、标签 13.6.5...

    bloeckner_frontendP5_travelapp

    这是通过首先在客户端获取用户输入(目的地城市,开始日期,返回日期),然后向本地快递服务器发送投递请求,从那里调用各种api来收集所需信息来实现的: 收集的数据在服务器中组装,然后在客户端中再次处理以更新...

    写给大忙人看的JAVA SE 8

    第7章 JavaScript引擎——Nashorn 146 7.1 从命令行运行Nashorn 148 7.2 从Java运行Nashorn 149 7.3 调用方法 150 7.4 构造对象 151 7.5 字符串 153 7.6 数字 153 7.7 使用数组 154 7.8 列表和映射 155 7.9 lambda...

    frontend-resource:前端资源收集

    前端资源合集引自目录css处理图片压缩/合并在线制作转换工具项目管理版本控制检测/测试多终端检查/测试兼容/性能/数据查询性能测试综合其他代码在线演示常用组件常用组件综合触屏滚动日期选择器图表弹出层框架、库...

    java开源包1

    JSEditor 是 Eclipse 下编辑 JavaScript 源码的插件,提供语法高亮以及一些通用的面向对象方法。 Java数据库连接池 BoneCP BoneCP 是一个高性能的开源java数据库连接池实现库。它的设计初衷就是为了提高数据库连接...

    java开源包11

    JSEditor 是 Eclipse 下编辑 JavaScript 源码的插件,提供语法高亮以及一些通用的面向对象方法。 Java数据库连接池 BoneCP BoneCP 是一个高性能的开源java数据库连接池实现库。它的设计初衷就是为了提高数据库连接...

    java开源包2

    JSEditor 是 Eclipse 下编辑 JavaScript 源码的插件,提供语法高亮以及一些通用的面向对象方法。 Java数据库连接池 BoneCP BoneCP 是一个高性能的开源java数据库连接池实现库。它的设计初衷就是为了提高数据库连接...

    java开源包3

    JSEditor 是 Eclipse 下编辑 JavaScript 源码的插件,提供语法高亮以及一些通用的面向对象方法。 Java数据库连接池 BoneCP BoneCP 是一个高性能的开源java数据库连接池实现库。它的设计初衷就是为了提高数据库连接...

    java开源包6

    JSEditor 是 Eclipse 下编辑 JavaScript 源码的插件,提供语法高亮以及一些通用的面向对象方法。 Java数据库连接池 BoneCP BoneCP 是一个高性能的开源java数据库连接池实现库。它的设计初衷就是为了提高数据库连接...

Global site tag (gtag.js) - Google Analytics