js中几个常用的时间日期处理函数(1/2)
一、把字符串转换为日期对象
有时需要把字符串转换为日期对象,但是ie下不支持new date(“2011-04-07”)这样实例化日期对象,ff下支持,所以写了一个扩展函数,用来把形如yyyy-mm-dd或者dd/mm/yyyy的字符串转换为日期对象。代码如下:
二、计算两个日期之间的差值convertdate1 /*
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()函数,代码如下:
datediff1 /*
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
补充:网页制作,js教程
- 更多JS疑问解答:
- 几个验证11位手机号码格式的js代码
- js如何获得FCKeditor控件的值
- 用js限制投票的cookie .目前设置的为:<input type="" class="" onclick="'window.location...
- JS验证,这块“牛皮”反复修改都不能实现
- 在JS中使用DOM模型
- 如何用JS 获取本地文件夹的文件列表
- js中new 了两个Object数组。怎么样将数组内容合并,重复的内容?
- 求实现自动生成图片缩略图的JS代码
- JS脚本网页问题
- js,代码中"object"和"Object"区别?
- js+flash实现网页图片切换效果,出现边框,单击激活此控件。
- JS怎样操作PHP中的参数
- js 怎么在一打开页面就加载这个函数。
- Date.parse()的问题(js)
- <script src="/{maxcms:sitepath}js/common.js"></script>是什么意思