js——内置对象之Date日期对象
来源:互联网 发布:卓易云软件下载 编辑:程序博客网 时间:2024/06/05 08:24
Data对象
日期对象可以储存任意一个日期,并且可以精确到毫秒数(1/1000 秒)。
定义一个时间对象 :
var mydate=new Date();
注意:使用关键字new,Date()的首字母必须大写。
使 mydate 成为日期对象,并且已有初始值:当前时间(当前电脑系统时间)。
如果要自定义初始值,可以用以下方法:
var d = new Date(2012, 10, 1); //2012年10月1日var d = new Date('Oct 1, 2012'); //2012年10月1日
我们最好使用下面介绍的“方法”来严格定义时间。
访问方法语法:“<日期对象>.<方法>”
Date对象中处理时间和日期的常用方法:
返回/设置年份
get/setFullYear() 返回/设置年份,用四位数表示。
var mydate=new Date();//当前时间2014年3月6日document.write(mydate+"<br>");//输出当前时间document.write(mydate.getFullYear()+"<br>");//输出当前年份mydate.setFullYear(81); //设置年份document.write(mydate+"<br>"); //输出年份被设定为 0081年。
注意:不同浏览器, mydate.setFullYear(81)结果不同,年份被设定为 0081或81两种情况。
结果:
Thu Mar 06 2014 10:57:47 GMT+08002014Thu Mar 06 0081 10:57:47 GMT+0800
注意:
1.结果格式依次为:星期、月、日、年、时、分、秒、时区。(火狐浏览器)
2. 不同浏览器,时间格式有差异。
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>获得年份 </title>
<script type="text/javascript">
var mydate=new Date();
var myyear=mydate.getFullYear() ;
document.write("年份:"+myyear);
</script>
</head>
<body>
</body>
</html>
返回星期
getDay() 返回星期,返回的是0-6的数字,0 表示星期天。如果要返回相对应“星期”,通过数组完成,代码如下:
<script type="text/javascript"> var mydate=new Date();//定义日期对象 var weekday=["星期日","星期一","星期二","星期三","星期四","星期五","星期六"];//定义数组对象,给每个数组项赋值 var mynum=mydate.getDay();//返回值存储在变量mynum中 document.write(mydate.getDay());//输出getDay()获取值 document.write("今天是:"+ weekday[mynum]);//输出星期几</script>
<script type="text/javascript"> var mydate=new Date();//定义日期对象 var weekday=["星期日","星期一","星期二","星期三","星期四","星期五","星期六"];//定义数组对象,给每个数组项赋值 var mynum=mydate.getDay();//返回值存储在变量mynum中 document.write(mydate.getDay());//输出getDay()获取值 document.write("今天是:"+ weekday[mynum]);//输出星期几</script>
注意:以上代码是在2014年3月7日,星期五运行。
结果:
5
今天是:星期五
返回/设置时间
get/setTime() 返回/设置时间,单位毫秒数,计算从 1970 年 1 月 1 日零时到日期对象所指的日期的毫秒数。
如果将目前日期对象的时间推迟1小时,代码如下:
<script type="text/javascript"> var mydate=new Date(); document.write("当前时间:"+mydate+"<br>"); mydate.setTime(mydate.getTime() + 60 * 60 * 1000); document.write("推迟一小时时间:" + mydate);</script>
结果:
当前时间:Thu Mar 6 11:46:27 UTC+0800 2014
推迟一小时时间:Thu Mar 6 12:46:27 UTC+0800 2014
注意:1. 一小时 60 分,一分 60 秒,一秒 1000 毫秒
2. 时间推迟 1 小时,就是: “x.setTime(x.getTime() + 60 * 60 * 1000);”
程序:
1、获取从当前时间到指定日期的间隔时间(倒计时 天、时、分、秒动态)
js
window.onload=function () { getIntv();}function getIntv(){ var end = new Date("2017-01-27"); var now = new Date(); var timer = end-now; var day = Math.floor(timer/(1000*60*60*24)); var timer1 = timer%(1000*60*60*24) var hour = Math.floor(timer1/(1000*60*60)); var timer2 = timer1%(1000*60*60); var min = Math.floor(timer2/(1000*60)); var timer3 = timer2%(1000*60); var sec = Math.floor(timer3/1000); document.getElementById("show").innerHTML="距2017-01-27还有"+day+"天"+hour+"小时"+min+"分钟"+sec+"秒";
if (timer<=0){ document.getElementById("show").innerHTML="团购结束!";}
setTimeout(getIntv,500);}
js
window.onload=function () { getIntv();}function getIntv(){ var end = new Date("2017-01-27"); var now = new Date(); var timer = end-now; var day = Math.floor(timer/(1000*60*60*24)); var timer1 = timer%(1000*60*60*24) var hour = Math.floor(timer1/(1000*60*60)); var timer2 = timer1%(1000*60*60); var min = Math.floor(timer2/(1000*60)); var timer3 = timer2%(1000*60); var sec = Math.floor(timer3/1000); document.getElementById("show").innerHTML="距2017-01-27还有"+day+"天"+hour+"小时"+min+"分钟"+sec+"秒";if (timer<=0){ document.getElementById("show").innerHTML="团购结束!";}setTimeout(getIntv,500);}
html
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title> <link rel="stylesheet" type="text/css" href="style.css"> <script type="text/javascript" src="倒计时.js"></script></head><body> <div id="show">显示时间</div></body></html>
2、数字日期转换为中文日期
方法一:
var str = getChsDate('2015-01-08'); function getChsDate(time){ time = time.replace(/-/g,''); var arr = [] for(i=0;i<time.length;i++){ switch(time[i]){ case '0': arr.push('零');break; case '1': arr.push('一');break; case '2': arr.push('二');break; case '3': arr.push('三');break; case '4': arr.push('四');break; case '5': arr.push('五');break; case '6': arr.push('六');break; case '7': arr.push('七');break; case '8': arr.push('八');break; case '9': arr.push('九');break; } } console.log(time); arr.splice(4,0,'年'); arr.splice(7,0,'月'); arr.splice(10,0,'日'); arr = arr.join(''); return arr; }//这种方法有一定缺陷,比如'2016-02-28',输出'二零一六年零二月二八日',读起来很别扭 console.log(str); // 二零一五年一月八日
方法二:
function getChsDate(date){ var newDate =date.split("-"), year = newDate[0], month = newDate[1], day = newDate[2]; var dict ={"0":"零","1": "一", "2": "二", "3": "三","4": "四","5": "五","6": "六","7": "七", "8": "八", "9": "九", "10": "十", "11": "十一", "12": "十二","13": "十三", "14": "十四", "15": "十五", "16": "十六", "17": "十七", "18": "十八", "19": "十九","20": "二十","21": "二十一", "22": "二十二", "23": "二十三", "24": "二十四", "25": "二十五","26": "二十六", "27": "二十七", "28": "二十八", "29": "二十九", "30": "三十", "31": "三十一"}; return dict[year[0]]+dict[year[1]]+dict[year[2]]+dict[year[3]] + '年' + dict[Number(month)] +'月' + dict[Number(day)] + '日'; }; getChsDate('2015-01-08');//"二零一五年一月八日"
3、获取n天前的日期
var lastWeek = getLastNDays(7); // ‘2016-01-08’ var lastMonth = getLastNDays(30); //'2015-12-15' function getLastNDays(dater){ var now = Date.now(); var timer = dater*24*60*60*1000; var past = new Date(now - timer); var year = past.getFullYear(); var month = past.getMonth()+1;//月份从0开始算; var day = past.getDate(); return year+'-'+month+'-'+day; } console.log(lastWeek); console.log(lastMonth);
var lastWeek = getLastNDays(7); // ‘2016-01-08’ var lastMonth = getLastNDays(30); //'2015-12-15' function getLastNDays(dater){ var now = Date.now(); var timer = dater*24*60*60*1000; var past = new Date(now - timer); var year = past.getFullYear(); var month = past.getMonth()+1;//月份从0开始算; var day = past.getDate(); return year+'-'+month+'-'+day; } console.log(lastWeek); console.log(lastMonth);
显示时间实例:年月日星期时分秒
html:
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title> <link rel="stylesheet" type="text/css" href="style.css"> <script type="text/javascript" src="test.js"></script></head><body> <div id="show">显示时间</div></body></html>
js:
/** * Created by Administrator on 2016/7/10 0010. */window.onload=function () { showTime();}function checkTime(i) { if (i<10){ i="0"+i; } return i;} function showTime(){ var date=new Date(); var year=date.getFullYear(); var month=date.getMonth()+1; var myday=date.getDate(); var day=date.getDay(); var h=date.getHours(); var m=date.getMinutes(); var s=date.getSeconds(); m=checkTime(m); s=checkTime(s); var weekday=new Array(7); weekday[0]="星期日"; weekday[1]="星期一"; weekday[2]="星期二"; weekday[3]="星期三"; weekday[4]="星期四"; weekday[5]="星期五"; weekday[6]="星期六"; document.getElementById("show").innerHTML=year+"年"+month+"月"+myday+"日"+weekday[day]+h+":"+m+":"+s; setTimeout(showTime,500); }
0 0
- js——内置对象之Date日期对象
- Javascript内置对象之Date日期对象
- JS内置对象之Date对象
- JavaScript基础----28JS内置对象-Date日期对象
- JS内置对象-String对象、Date日期对象、Array数组对象、Math对象
- JavaScript内置对象-Date 日期对象
- 27 JS基础之--日期对象Date
- JS内置对象4:Date
- JS中的日期(Date)对象
- JS:1.5日期(Date)对象
- JS Date(日期)对象
- JS之内置对象
- JS之Date对象
- js内置对象(日期对象)
- JavaScript第四章知识点总结——JS内置对象 Array Date Math
- JavaScript第四章知识点总结——JS内置对象 Array Date Math
- week14---12月8日 JS内置对象——string、Date
- JavaScript内置对象date
- Hibernate(三)
- 朴素贝叶斯之MapReduce版
- 创建XMLHttpRequest对象
- 解决mac下sublime中文乱码
- C++拷贝构造
- js——内置对象之Date日期对象
- 文档搜索引擎
- canvas动画--一个会移动的饭团
- 前端CSS学习笔记
- MD5加密
- Pnp管理器(2)
- android-----事件分发机制测试系列
- [leetcode] 172. Factorial Trailing Zeroes
- FreeRTOS 任务管理之任务创建