一、把字符串转换为日期对象
有时需要把字符串转换为日期对象,但是ie下不支持new date(“2011-04-07”)这样实例化日期对象,ff下支持,所以写了一个扩展函数,用来把形如yyyy-mm-dd或者dd/mm/yyyy的字符串转换为日期对象。代码如下:
convertdate
1 /*
2 函数:把字符串转换为日期对象
3 参数:yyyy-mm-dd或dd/mm/yyyy形式的字符串
4 返回:date对象
5 注:ie下不支持直接实例化日期对象,如new date("2011-04-06")
6 */
7 date.prototype.convertdate = function (date) {
8 var flag = true;
9 var datearray = date.split("-");
10 if (datearray.length != 3) {
11 datearray = date.split("/");
12 if (datearray.length != 3) {
13 return null;
14 }
15 flag = false;
16 }
17 var newdate = new date();
18 if (flag) {
19 // month从0开始
20 newdate.setfullyear(datearray[0], datearray[1] - 1, datearray[2]);
21 }
22 else {
23 newdate.setfullyear(datearray[2], datearray[1] - 1, datearray[0]);
24 }
25 newdate.sethours(0, 0, 0);
26 return newdate;
27 };测试:
<script type="text/网页特效">
document.writeln(new date().convertdate("7/12/2011"));
</script>
输出:wed dec 07 2011 17:30:58 gmt+0800
二、计算两个日期之间的差值
这个函数可以计算两个日期之前的差值(毫秒/秒/分/小时/天),主要用到了gettime()函数和math.floor()函数,代码如下:
datediff
1 /*
2 函数:计算两个日期之间的差值
3 参数:date是日期对象
4 flag:ms-毫秒,s-秒,m-分,h-小时,d-天,m-月,y-年
5 返回:当前日期和date两个日期相差的毫秒/秒/分/小时/天
6 */
7 date.prototype.datediff = function (date, flag) {
8 var mscount;
9 var diff = this.gettime() - date.gettime();
10 switch (flag) {
11 case "ms":
12 mscount = 1;
13 break;
14 case "s":
15 mscount = 1000;
16 break;
17 case "m":
18 mscount = 60 * 1000;
19 break;
20 case "h":
21 mscount = 60 * 60 * 1000;
22 break;
23 case "d":
24 mscount = 24 * 60 * 60 * 1000;
25 break;
26 }
27 return math.floor(diff / mscount);
28 };测试:
<script type="text/javascript">
var d1 = new date().convertdate("2011-04-08");
var d2 = new date().convertdate("2011-04-07");
document.writeln(d1.datediff(d2, 'd'));
</script>结果:
1
首页 1 2 末页
以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索字符串
, 对象
, 实例
, 函数
, new
prototype
mysql日期处理函数、几个常用函数的导数、oracle日期处理函数、php图片处理常用函数、js日期处理函数,以便于您获取更多的相关知识。