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 查看节 ...
随机推荐
- 2019-2020-1 20199324《Linux内核原理与分析》第三周作业
第二章 操作系统是如何工作的 一.知识点总结 1.计算机的三个法宝 存储程序计算机 函数调用堆栈机制.堆栈:是C语言程序运行时必须使用的记录函数调用路径和参数存储的空间. 中断 2.堆栈相关的寄存器和 ...
- netstat - 系统信息
netstat - 系统信息 注意:如果是勘验或者验证漏洞,需要验证netstat程序的完整性(netstat程序是否被修改过). # 老版本的CentOS中会自带这个软件包,新版的7有的时候需要单独 ...
- 代码死循环导致cpu使用率过高
1. top命令查看进程pid 27081 2. ps -mp pid -o THREAD,tid,time (tid:31128) 3.printf “%x\n” number #将tid转换 ...
- 03-Java的基础语法
一个Java程序可以认为是一系列对象的集合,而这些对象通过调用彼此的方法来协同工作.下面简要介绍下类.对象.方法和实例变量的概念. 对象:对象是类的一个实例,有状态和行为.例如,一条狗是一个对象,它的 ...
- numpy.ravel() 与 numpy.flatten()
两者都可实现将多维数组降位一维的功能 numpy.flatten()返回拷贝,对拷贝所做的修改不会影响原始矩阵 numpy.ravel()返回视图,会影响原始矩阵 1)ravel() In [16]: ...
- deeplearning.ai 序列模型 Week 1 RNN(Recurrent Neural Network)
1. Notations 循环序列模型的输入和输出都是时间序列.$x^{(i)<t>}$表示第$i$个输入样本的第$t$个元素,$T_x^{(i)}$表示输入的第$i$个样本的元素个数:$ ...
- Java IO: Reader和Writer
作者: Jakob Jenkov 译者: 李璟(jlee381344197@gmail.com) Reader 原文链接 Reader是Java IO中所有Reader的基类.Reader与Input ...
- GBDT的理解和总结
2015/11/21 16:29:29 by guhaohit 导语: GBDT是非常有用的机器学习的其中一个算法,目前广泛应用于各个领域中(regression,classification,ran ...
- 吴裕雄--天生自然Android开发学习:魅蓝3开启USB调试
打开手机点击:设置 选择:关于手机 在详情里面找到:版本号,然后不断地点击那个版本号. 然后返回一步 再选择设置里面的:辅助功能 再选择辅助功能里面的:开发者选项 进入开发者选项后,选择打开两项:一是 ...
- tfjs-node初体验:训练模型的存储
JS,一门从浏览器兴起,却不止于浏览器的脚本,个人一直认为其是最有潜力的脚本语言.不只是因为ES6优雅的语法,更重要的是其易上手,跨平台的优点. Node将JS从browser带去了client是革命 ...