<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>test date</title>
</head>
<body> <script type="text/javascript"> document.write("三种获取时间戳的方式:");
document.write("<br/>");
var myDate = new Date();
document.write("系统时间:" + myDate);
document.write("<br/>");
document.write("<br/>");
// 获取时间戳:第一种方式:
var timestamp1 = Date.parse(myDate);
document.write("第一种方式:Date.parse(new Date())获取方式时间戳:" + timestamp1); document.write("<br/>")
var timestamp2 = myDate.valueOf(); document.write("第二种方式:new Date().valueOf()获取方式时间戳:" + timestamp2); var timestamp3 = myDate.getTime();
document.write("<br/>")
document.write("第三种方式:new Date().getTime()获取方式时间戳:" + timestamp3); document.write("<br/><br/><br/>"); document.write("<font color='red'>日期格式必须【yyyy-mm-dd】才能转成long的毫秒!其他的不是【年-月-日】的格式,结果会是【NaN】</font>"); document.write("<br/><br/><br/>");
document.write("日期类型转换成long类型");
var strTime = "2015/04/12"; //字符串日期格式
var strTemp = strTime.replace(/-/g, "/");
document.write("strTemp: "+strTemp);
var date1 = new Date(strTemp); document.write("<br/>");
document.write("2015-04-12转换成Date: " + date1);
document.write("<br/>");
document.write(date1.getTime()); // =====================正则表达式=========
/**
* /-/g是js的正则表达式,匹配划线的
* re = /pattern/[flags]
* 用 "/ " 字符分隔模式
* g (全文查找出现的所有 pattern)
* i (忽略大小写)
* m (多行查找)
*/
// =================================== document.write("<br/><br/><br/>"); //=======================基础方法======== var myDate = new Date();
myDate.getYear(); //获取当前年份(2位)
myDate.getFullYear(); //获取完整的年份(4位,1970-????)
myDate.getMonth(); //获取当前月份(0-11,0代表1月)
myDate.getDate(); //获取当前日(1-31)
myDate.getDay(); //获取当前星期X(0-6,0代表星期天)
myDate.getTime(); //获取当前时间(从1970.1.1开始的毫秒数)
myDate.getHours(); //获取当前小时数(0-23)
myDate.getMinutes(); //获取当前分钟数(0-59)
myDate.getSeconds(); //获取当前秒数(0-59)
myDate.getMilliseconds(); //获取当前毫秒数(0-999)
myDate.toLocaleDateString(); //获取当前日期
var mytime = myDate.toLocaleTimeString(); //获取当前时间
myDate.toLocaleString(); //获取日期与时间 function getLongByDate(strDate)
{
var result = null;
if (strDate == null || strDate == "" || strDate == undefined)
{
return result;
}
else
{
// 如果传入的日期字符串格式不正确,返回空字符串
try
{
var resultDate = new Date(strDate.replace(/-/g, "/"));
result = resultDate.getTime();
}
catch (ex)
{
//alert("日期格式不正确");
}
} return result;
} document.write("<br/><br/>");
document.write("getLongByDate(str): " + getLongByDate("15-04-2015"));
document.write("<br/><br/>"); document.write("aaaa: " + new Date(('2014/05/10 13:25:50').replace(new RegExp("-","gm"),"/")).getTime());
</script>
<script>
document.write("long类型转换成日期类型");
Date.prototype.format=function(fmt) {
var o = {
"M+" : this.getMonth() + 1, //月份
"d+" : this.getDate(), //日
"h+" : this.getHours() % 12 == 0 ? 12 : this.getHours() % 12, //12小时制
"H+" : this.getHours(), //24小时制
"m+" : this.getMinutes(), //分
"s+" : this.getSeconds(), //秒
"q+" : Math.floor((this.getMonth() + 3) / 3), //季度
"S" : this.getMilliseconds() //毫秒
};
var week = {
"0" : "\u65e5",
"1" : "\u4e00",
"2" : "\u4e8c",
"3" : "\u4e09",
"4" : "\u56db",
"5" : "\u4e94",
"6" : "\u516d"
};
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)){
fmt = fmt.replace(RegExp.$1, (RegExp.$1.length==1) ? (o[k]) : (("00"+ o[k]).substr((""+ o[k]).length)));
}
}
return fmt;
} var t = 1428138194801;
var d = new Date();
d.setTime(t);
var s=d.format('yyyy-MM-dd HH:mm:ss');
document.write("long类型转换成日期类型: " + s); document.write("<br/><br/>");
document.write("日期类型转换成long类型");
var strTime = "2015-04-15"; //字符串日期格式
var date1 = new Date(strTime.replace(/-/g, "/"));
document.write("<br/>");
document.write("2015-04-15转换成Date: " + date1);
document.write("<br/>");
document.write(date1.getTime()); function getLongByDate(strDate)
{
var result = null;
if (strDate == null || strDate == "" || strDate == undefined)
{
return result;
}
else
{
// 如果传入的日期字符串格式不正确,返回空字符串
try
{
var resultDate = new Date(strDate.replace(/-/g, "/"));
result = resultDate.getTime();
}
catch (ex)
{
//alert("日期格式不正确");
}
} return result;
} document.write("<br/><br/>");
document.write("getLongByDate(str): " + getLongByDate("15-04-2015")); </script> </body>
</html>

【原创】Js:日期处理(日期格式必须【yyyy-mm-dd】才能转成long的毫秒!其他的不是【年-月-日】的格式,结果会是【NaN】)的更多相关文章

  1. Excel日期格式单元格写成yyyy.MM.dd格式将无法读取到DataTable

    最近在改公司的订单系统,遇到了一个奇怪的问题.C#程序需要从Excel文件中将数据全部读取到DataTable,其中Excel文件的第一列是日期格式yyyy/MM/dd,而这一列中大部分的单元格都是按 ...

  2. 让用户输入一个日期字符串,将其转换成日期格式, 格式是(yyyy/MM/dd,yyyyMMdd,yyyy-MM-dd)中的一种, 任何一种转换成功都可以; 如果所有的都无法转换,输出日期格式非法。

    第三种方法 while(true) {             Date d;        System.out.println("正在进行第一次匹配,请稍后~—~");     ...

  3. C# 时间格式 yyyy/mm/dd

    今天遇到个问题在C#中将日期格式设置为yyyy/MM/dd,我是这样写的: DateTime.Now.ToString("yyyy/MM/dd"); 可是获取到的日期还是显示yyy ...

  4. JS 2019-12-03T15:53:23.000+08:00 转化为 YYYY MM DD

    js时间格式转化 2019-12-03T15:53:23.000+08:00 转化为 YYYY MM DD var dateee = new Date(createTime).toJSON();var ...

  5. DateTime.Now.ToString("yyyy/MM/dd") 输出的结果是 2006-03-16(转)

    今天我在使用 DateTime.Now.ToString("yyyy/MM/dd") 输出的结果是 2006-03-16 而不是我想要的 2006/03/16,都快把我郁闷的不行了 ...

  6. Oracle中把一个DateTime的字符串转化成date类型。to_date('2016/12/8 18:55:43','yyyy/MM/dd hh24:mi:ss'),

    Oracle中把一个DateTime或者该形态字符串转化成date类型. to_date('2016/12/8 18:55:43','yyyy/MM/dd hh24:mi:ss'), 或者: sele ...

  7. 从客户端(ASPxFormLayout1$txtRule="<YYYY><MM><DD><XXXX>")中检测到有潜在危险的 Request.Form 值

    在有文本框的值属于这种时<YYYY><MM><DD><XXXX>,会报这个错 在webconfig中加入 <httpRuntime request ...

  8. DateTime.Now.ToString("yyyy/MM/dd") 时间格式化中的MM为什么是大写的?

    如果MM是小写,就表示时间里的分钟yyyy-MM-dd HH:mm:ss (年-月-日 时:分:秒) yyyy-MM-dd HH:mm:ss 年-月-日 时:分:秒大写是为了区分“月”与“分” 顺便说 ...

  9. 这里有个坑---js日期格式yyyy-MM-dd与yyyy/MM/dd

    这里有个坑,---------每一个遇到的坑总结后都是一比财富. 我们写脚本的时候,一般定义一个日期格式会使用“2015-12-21”和“2015/12/21”两种数据格式,由于各取所需日期格式并没有 ...

随机推荐

  1. iOS不得姐项目--appearance的妙用,再一次设置导航栏返回按钮,导航栏左右按钮的封装(巧用分类)

    一.UI_APPEARANCE_SELECTOR 彩票项目中appearance的用法一直没有搞明白,这次通过第二个项目中老师的讲解,更深一层次的了解到了很多关于appearance的作用以及使用方法 ...

  2. hdu1711 KMP

    #include<stdio.h> #include<string.h> #define maxn 1000010 int next[maxn],s[maxn],p[maxn] ...

  3. 设计模式原来如此-代理模式(Proxy Pattern)

    代理模式(Proxy Pattern)是一个使用率非常高的模式,其定义如下:为其他对象提供一种代理以控制对这个对象的访问. 在某些情况下,一个客户不想或者不能直接引用另一个对象,而代理对象可以在客户端 ...

  4. DNA repair问题

    问题:Biologists finally invent techniques of repairing DNA that contains segments causing kinds of inh ...

  5. Java的多线程机制系列:(四)不得不提的volatile及指令重排序(happen-before)

    一.不得不提的volatile volatile是个很老的关键字,几乎伴随着JDK的诞生而诞生,我们都知道这个关键字,但又不太清楚什么时候会使用它:我们在JDK及开源框架中随处可见这个关键字,但并发专 ...

  6. BZOJ1016 最小生成树计数

    Description 现在给出了一个简单无向加权图.你不满足于求出这个图的最小生成树,而希望知道这个图中有多少个不同的最小生成树.(如果两颗最小生成树中至少有一条边不同,则这两个最小生成树就是不同的 ...

  7. LFI、RFI、PHP封装协议安全问题学习

    本文希望分享一些本地文件包含.远程文件包含.PHP的封装协议(伪协议)中可能包含的漏洞 相关学习资料 http://www.ibm.com/developerworks/cn/java/j-lo-lo ...

  8. org.springframework.orm.hibernate3.LocalSessionFactoryBean的疑惑解决办法

    在项目中使用了SSH框架(Struts2 + Spring3+ Hibernate3),applicationContext中配置了sessionFactory <bean id="s ...

  9. MySQL里面的子查询实例

    一,子选择基本用法 1,子选择的定义 子迭择允许把一个查询嵌套在另一个查询当中.比如说:一个考试记分项目把考试事件分为考试(T)和测验(Q)两种情形.下面这个查询就能只找出学生们的考试成绩 selec ...

  10. javascript中this的学习总结

    在开发中,this多使用在function函数中,也正是由于调用function的对象的不同,才导致了this的指向不同.需要明白(1).function也是对象:(2).function执行时是在某 ...