JS基础入门篇(十八)—日期对象
1.日期对象
日期对象:
通过new Date()就能创建一个日期对象,这个对象中有当前系统时间的所有详细信息。
以下代码可以获取当前时间:
<script>
var t = new Date();
console.log(t);
console.log(typeof t);
</script>
如果想不停打印当前的时间,可以看以下代码:
<script>
setInterval(function () {
var t = new Date();
console.log(t);
},1000);
2.日期对象的参数
参数:
(1)年月日 时分秒
new Date(2016,0,12,2,40,21);月是从0开始算,所以0表示的是1月
(2)字符串
new Date('Oct 27,2016 10:10:12');
(3)时间戳
时间戳(获取1970-01-01 00:00:00到目前日期对象的时间差(单位:毫秒))
以下代码,可以把注释打开,查看效果:
<script>
var t= new Date(2016,0,12,2,40,21);//月是从0开始算,所以0表示的是1月。打印结果是Tue Jan 12 2016 02:40:21 GMT+0800 (CST)。
// var t= new Date("Oct 27,2016 10:10:12");//打印结果是Thu Oct 27 2016 10:10:12 GMT+0800 (CST)。
// var stemp= new Date().getTime();// 时间戳 距离 1970年1月1日0:0:0 的毫秒差。
// var t= new Date(stemp);//把时间戳传进去,获取对应的时间。打印的结果当前时间
// var t= new Date(0);//表示1970年1月1日0:0:0
// var t = new Date(stemp+10000*1000);//表示距离stmp10000秒之后的时间。
console.log(t);
</script>
3.获取详细时间和设置详细时间
获取详细时间:
getFullYear(); 获取年
getMonth(); 获取月(月份从0开始计算)
getDate(); 获取日
getDay(); 获取天
getHours(); 获取时
getMinutes(); 获取分
getSeconds(); 获取秒
getMilliseconds(); 获取毫秒
getTime(); 获取1970-01-01 00:00:00到目前日期对象的时间差(单位:毫秒)
设置详细时间:
setFullYear() 设置年
setMonth() 设置月 (月份从0开始计算)
setDate() 设置日
setHours() 设置小时
setMinutes() 设置分钟
setSeconds() 设置秒钟
setMilliseconds() 设置毫秒
setTime() 设置1970-01-01 00:00:00到目前日期对象的时间差(单位:毫秒)
注意:
设置日期对象的时候只是在操作这个对象,没有操作本机的系统时间
4.字符时钟
以下是字符时钟代码:
<body>
<div></div>
<script>
var div=document.getElementsByTagName("div")[0];
//函数作用是,当获取的分秒小于0的时候,往前面加"0"。
function add0(num) {
if(num<10){
return "0"+num;
}else{
return num+"";
}
}
setInterval(function () {
var t=new Date();
var hour=t.getHours();//获取时
var m=add0(t.getMinutes());//获取分
var s=add0(t.getSeconds());//获取秒
var time=hour+":"+m+":"+s;
div.innerHTML=time;
},1000);
</script>
</body>
5.计算这个月有多少天的三种方式
方式一:
<script>
//由于函数内部会计算每个月有多少天,当设置超出时,会溢出,得到的是下个月的时间。
var t=new Date();
var M=t.setMonth(0);//设着月份为1月
t.setDate(32);//设置天数为32天,但1月份只有31天则会溢出。则时间设置后是2月1号
console.log("2018年1月有"+(32-t.getDate())+"天");
</script>
方式二:
<script>
var t=new Date();
var M=t.setMonth(1);//设着月份为2月
t.setDate(0);//设置为0天,则会跳回上个月的最后一天。
console.log("2018年1月有"+(t.getDate())+"天");
</script>
方式三:
<script>
var t=new Date();
var M=t.setMonth(0);//设着月份为1月
t.setDate(32);//设置天数为32天,但1月份只有31天则会溢出。则时间设置后是2月1号
t.setDate(0);//设置为0天,则会跳回上个月的最后一天。
console.log("2018年1月有"+(t.getDate())+"天");
</script>JS基础入门篇(十八)—日期对象的更多相关文章
- JS基础入门篇(三十五)—面向对象(二)
如果没有面向对象这种抽象概念的小伙伴,建议先看一下我写的JS基础入门篇(三十四)-面向对象(一)
- MyBatis基础入门《十八》动态SQL(if-where)
MyBatis基础入门<十八>动态SQL(if-where) 描述: 代码是在<MyBatis基础入门<十七>动态SQL>基础上进行改造的,不再贴所有代码,仅贴改动 ...
- JS基础入门篇(二十七)—BOM
虽然上次写到js基础篇(二十四),这次直接写到(二十七).是为了提醒自己中间有几篇没写.特此说明一下啊. 1.window.open() 使用a标签呢,点击一下a标签页面才会跳转,有时候我们需要做的操 ...
- JS基础入门篇(二十)—事件对象以及案例(二)
案例一.点击按钮,选中input中的全部内容 select()方法:选中全部. 点击按钮选中输入框中的内容!!!! <!DOCTYPE html> <html lang=" ...
- JS基础入门篇(三十四)— 面向对象(一)
1.对象 对象的定义 : 对象 是 由 键值对 组成的无序集合. 创建对象两种方法 : 方法一 : 字面量方法 var obj = {name: "k"}; 方法二 : new O ...
- JS基础入门篇(二十四)—DOM(下)
1.offsetLeft/offsetTop offsetLeft/offsetTop : 到定位父级节点的距离. <!DOCTYPE html> <html lang=" ...
- JS基础入门篇(三十六)—面向对象( 三 )
1.class class es6 中 为 关键字用来声明 一个 类 1.只能通过new调用 2.不存在变量提升 3.多个方法之间直接书写,不需要,隔开 4.类的方法是直接定义在类的原型上的 5.定义 ...
- JS基础入门篇(十二)—JSON和Math
1.JSON JSON: 对象格式的字符串 轻量的数据传输格式 注意事项: 键名 需要 使用 双引号 包起来 JOSN有两个方法:JSON.parse和 JSON.stringify. JSON.pa ...
- JS基础入门篇(二十四)—DOM(上)
1.常用的节点类型,nodeType,attributes,childNodes. 1.元素节点 - 1 2.属性节点 - 2 3.文本节点 - 3 4.注释节点 - 8 5.文档节点 - 9 查看节 ...
随机推荐
- git命令简单使用
git config --global user.name 'sss' git config --global user.email 'huahua@163.com' cd d:/mywork git ...
- [LC] 151. Reverse Words in a String
Given an input string, reverse the string word by word. Example 1: Input: "the sky is blue" ...
- 5-7 学生cpp成绩统计
完成“学生cpp成绩计算”之后,修改Person和Student类,各自增加两个无参构造函数. 仍以Person类为基础,建立一个派生类Teacher,增加以下成员数据: int ID;//教师工号 ...
- 通俗易懂JSONP讲解
原文地址:http://www.cnblogs.com/dowinning/archive/2012/04/19/json-jsonp-jquery.html JSON的格式或者叫规则: JSON能够 ...
- python语法基础-常用模块-长期维护
############### 常用模块 ################ # 常用模块: # 1,collections模块 # 2,时间模块,time模块,datatime模块 # ...
- AndroidP推出多项AI功能,会不会引发新的隐私担忧?
让谷歌很"伤心"的是,相比苹果iOS系统的统一,Android系统的碎片化态势实在太严重了.就像已经发布一年多的Android O,其占有率仅有4.6%.主要是因为很多手机厂商都会 ...
- postman接口测试使用
在做测试之前,先要了解一下http相关的一些知识,这样做起来才会更加顺手. http的请求分为header 和 body,一般在header里面放一些其他的信息,比如cookie,浏览器信息 body ...
- 91)PHP,cookie代码展示
cookie练习的代码: (1)先设置:setcookie('key值‘,’value值’): (2)然后我执行那个文件, (3)获取我的cookie值,用$_cookie['key值’] cook ...
- Ajax如何提交数据到springMVC后台
现在好多web项目实现前段和后端分离,实现前端和后端技术人员,使他们加快开发,减少沟通上的问题,后台只需要提供访问接口,而前天只需要调用提供的接口即可.减少前后端的沟通上的成本 本项目是开发中发现aj ...
- 接口测试-chap5-使用正则表达式提取响应数据
1.导入相关库 import re 2.re.findall(r"前(.+?)后", 匹配源) 3.前:表示要匹配的文本左边的内容 4.后:表示要匹配的文本右边的内容 5.它的返回 ...