js string to date
Date.prototype.pattern=function(fmt) {
//alert(this.getFullYear());
fmt=fmt.toUpperCase();
var o = {
"MM" : this.getMonth(), //月份
"DD" : this.getDate(), //日
"HH24" : this.getHours(), //小时
"HH" : this.getHours()%12 == 0 ? 12 : this.getHours()%12, //小时
"MI" : this.getMinutes(), //分
"SSS" : this.getMilliseconds(), //毫秒
"SS" : this.getSeconds(), //秒
"QQ" : Math.floor((this.getMonth()+3)/3), //季度
"YYYY":this.getFullYear()<1911?this.getFullYear()+1911:this.getFullYear(), //國際元年
"YYY":this.getFullYear()>1911?this.getFullYear()-1911:this.getFullYear() //台灣民國年
};
//if(/(y+)/.test(fmt)){
// fmt=fmt.replace(RegExp.$1, (this.getFullYear()+"").substr(4 - RegExp.$1.length));
//}
//if(/(E+)/.test(fmt)){
// fmt=fmt.replace(RegExp.$1, ((RegExp.$1.length>1) ? (RegExp.$1.length>2 ? "/u661f/u671f" : "/u5468") : "")+week[this.getDay()+""]);
//}
for(var k in o){
if(new RegExp("("+ k +")").test(fmt)){
var needLength=RegExp.$1=="HH24"?2:RegExp.$1.length;
//alert("RegExp.$1:"+k +" o[k]:"+o[k].toString().length+" :"+(RegExp.$1.length==o[k].toString().length)+" >"+("00"+ o[k]).substr(-needLength));
fmt = fmt.replace(RegExp.$1, (needLength==o[k].toString().length) ? (o[k]) : (("00"+ o[k]).substr(-needLength)));
}
}
return fmt;
};
String.prototype.toDate=function(){
var year=0,month=0,day=0,hour=0,min=0,sec,mill=0;
var dateflag=false,timeflag=false;
var _value = this.replace(/(^\s*)|(\s*$)/g,"");
//console.log(_value);
var arr=_value.split(/\s/);
if(arr[0])
{
dateflag=true;
var _date=arr[0];
do
{
_date=_date.replace(/[-\/]/,"");
}while(_date.match(/[-\/]/));
if(_date.length!=7&&_date.length!=8)
{
throw 'get the date info is error, ther value is:'+_date;
}
console.log(arr[0]);
year=_date.substring(0,_date.length-4);
month=_date.substring(_date.length-4,_date.length-2);
day=_date.substr(_date.length-2);
console.log("year:"+year +" month:"+month+" day:"+day);
}
if(arr[1])
{
timeflag=true;
console.log(arr[1]);
var _time=arr[1].split(":",3);
hour=_time[0];
min=_time[1];
if(_time[2].indexOf('.')>-1)
{
sec=_time[2].split('.')[0];
mill=_time[2].split('.')[1];
}
else
{
sec=_time[2];
}
console.log("hour:"+hour +" min:"+min+" sec:"+sec+" mill:"+mill);
}
if(dateflag&&!timeflag)
{
var myDate=new Date();
myDate.setFullYear(year);
myDate.setMonth(month);
myDate.setDate(day);
return myDate;
}
else if(dateflag&&timeflag)
{
var myDate=new Date(year,month,day,hour,min,sec);
myDate.setFullYear(year);
myDate.setMonth(month);
myDate.setDate(day);
myDate.setHours(hour);
myDate.setMinutes(min);
myDate.setSeconds(sec);
myDate.setMilliseconds(mill);
return myDate;
}
else
{
throw 'conver string to date have error';
}
}
//var myDate="107-01-01 12:01:01".toDate().pattern();
var myDate="1999-01-01 23:03:04";
document.write(myDate+"<br />")
document.write(myDate.toDate().pattern("YYY-MM-DD HH:MI:SS"));
</script>
js string to date的更多相关文章
- JS中String类型转换Date类型 并 计算时间差
JS中String类型转换Date类型 1.比较常用的方法,但繁琐,参考如下:主要使用Date的构造方法:Date(int year , int month , int day)<script& ...
- JS日期去杠,日期转换String转Date
1.巧妙使用split()和join()替换字符串var str = '2014-05-05';var newstr = str.split('-').join("");split ...
- String和Date、Timestamp之间的转换
一.String与Date(java.util.Date)互转 1.1 String -> Date String dateStr = "2010/05/04 12:34:23&quo ...
- 熟用js中的Date
js中的Date类型是使用UTC(国际协调时间)自1970年1月1日午夜(零时)开始,经过的毫秒数来保存日期. 1. 创建日期对象 ---> 获得当前日期和时间 var now = new ...
- js动态获取当前系统时间+js字符串转换为date日期对象
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/ ...
- Java:String和Date、Timestamp之间的转
Java:String和Date.Timestamp之间的转 一.String与Date(java.util.Date)互转 1.1 String -> Date String dateStr ...
- Java:String和Date、Timestamp之间的转换
一.String与Date(java.util.Date)互转 1.1 String -> Date String dateStr = "2016-9-28 12:25:55" ...
- String与Date、Timestamp互转
一.String与Date(java.util.Date)互转 1.1 String -> Date String dateStr = "2010/05/04 12:34:23&quo ...
- spring mvc绑定对象String转Date解决入参不能是Date的问题
使用spring的mvc,直接将页面参数绑定到对象中,对象中有属性为Date时会报错,此时需要处理下. 同样的,其他的需要处理的类型也可以用这种方法. 在controller中加入代码 @InitBi ...
随机推荐
- 关于音频总线IIS的学习---Verilog
关于音频总线IIS的学习---Verilog 主要思想: 在分析寄存器的值变化的时候,将时钟的边沿分两边来看,边沿之前,边沿之后,在always 块语句里面用来分析判断的寄存器的值,都应该用边沿变化之 ...
- JavaBasic_正则表达式
就是符合一定规则的字符串 规则字符在java.util.regex.Pattern类中 字符转义\. 匹配.字符\* 匹配*字符\\ 匹配\字符\n 新行(换行)符 ('\u000A') \r 回车符 ...
- python调用linux的命令
有时候难免需要直接调用Shell命令来完成一些比较简单的操作,比如mount一个文件系统之类的.那么我们使用Python如何调用Linux的Shell命令?下面来介绍几种常用的方法: 1. os 模块 ...
- 4.IIC总线
一.IIC总线说明: IIC总线时序只有高低电平的持续时间一般是大于多少us/ms. iic时序: 开始:当SCL为高电平时,SDA由高电平状态切换到低电平状 ...
- Ubuntu16.04配置Eclipse开发OpenCV
系统环境 Ubuntu 16.04; OpenCV2.4.13; Eclipse neon for C++ 配置步骤 1.配置JDK,此处配置的是JDK1.8,详见<Ubuntu 16.04 ...
- SQLServer数据库镜像配置
目录 一.目标...2 二.前提条件.限制和建议...2 三.设置概述...2 四.安装Sql Server 2008 enterprise X64.3 4.1.安装.NET3.5.3 4.2.安装时 ...
- dll 恐怖的代码调整
总结一波这998的不得不提的调整代码的心得. 调整代码的背景:现有wps美化代码分散在各个插件里面,导致每次修改一小部分代码,都要全新编译,并且只能跟版本发,所以决定将wps的美化代码整合成一个插件d ...
- Failed to start component [StandardEngine[Tomcat].StandardHost[localhost].StandardContext[]]
今天在测试项目代码时,在idea中配置tomcat7插件运行后一直报如下错误: 解决方案:看了网上大多数办法都是修改xml文件配置,感觉并不适用,最后看到比较靠谱解释如下: pom.xml中jar包发 ...
- Docker 安装 oracle 并使用 navicat 实现外部连接
1,拉取 docker 镜像:docker pull registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g 1.1 , 该镜像由阿里云提供,比较大, ...
- 直接添加viewController中的view时的注意事项
直接添加viewController中的view时需要注意一个问题,比如: MyTestViewController *vc = [MyTestViewController new]; [self.v ...