JavaScript Date对象功能与用法学习记录


Posted in Javascript onApril 28, 2020

本文实例讲述了JavaScript Date对象功能与用法。分享给大家供大家参考,具体如下:

Date 实例用来处理日期和时间。Date对象基于1970年1月1日(世界标准时间)起的毫秒数。

JavaScript 的Date对象提供了数个UTC时间的方法,也相应提供了当地时间的方法。UTC,也就是我们所说的格林威治时间,指的是time中的世界时间标准。而当地时间则是指执行JavaScript的客户端电脑所设置的时间。

Date 构造函数

new Date();
//Sun Jan 06 2019 20:18:04 GMT+0800 (中国标准时间)

new Date(value); 
//value 代表自1970年1月1日00:00:00 (世界标准时间) 起经过的毫秒数。
new Date(000000000000);

//Thu Jan 01 1970 08:00:00 GMT+0800 (中国标准时间)

new Date(dateString);
//dateString表示日期的字符串值。该字符串应该能被 Date.parse() 方法识别
new Date("2019.01.01");
//Tue Jan 01 2019 00:00:00 GMT+0800 (中国标准时间)

new Date(year, month[, day[, hour[, minutes[, seconds[, milliseconds]]]]]);

//year代表年份的整数值。为了避免2000年问题最好指定4位数的年份; 使用 1998, 而不要用 98.
//month代表月份的整数值从0(1月)到11(12月)。
//day代表一个月中的第几天的整数值,从1开始。
//hour代表一天中的小时数的整数值 (24小时制)。
// minute分钟数。
// second秒数。
//millisecond表示时间的毫秒部分的整数值。

new Date(2019,01,01,01,01,01);

//Fri Feb 01 2019 01:01:01 GMT+0800 (中国标准时间)

Date方法

Date.now()

返回自 1970-1-1 00:00:00 UTC (世界标准时间)至今所经过的毫秒数,类型为Number。

Date.now()
//1546777708417

Date.parse()

解析一个表示日期的字符串,并返回从 1970-1-1 00:00:00 所经过的毫秒数。

Date.parse("2019.01.01")
//1546272000000

Date.parse('01 Jan 1970 00:00:00 GMT');
//0

Date.UTC()

接受和构造函数最长形式的参数相同的参数(从2到7),并返回从 1970-01-01 00:00:00 UTC 开始所经过的毫秒数。

  • year:1900 年后的某一年份。
  • month:0 到 11 之间的一个整数,表示月份。
  • date:1 到 31 之间的一个整数,表示某月当中的第几天。
  • hrs:0 到 23 之间的一个整数,表示小时。
  • min:0 到 59 之间的一个整数,表示分钟。

sec 0 到 59 之间的一个整数,表示秒。

ms

0 到 999 之间的一个整数,表示毫秒。

new Date(Date.UTC(2019, 0, 0, 0, 0, 1));
//Mon Dec 31 2018 08:00:01 GMT+0800 (中国标准时间)

时间戳格式转换

dateFormmat(time) {
 let date = new Date(time * 1000); //如果date为13位不需要乘1000
 let Ye = date.getFullYear() + '/';
 let Mo =
  (date.getMonth() + 1 < 10
  ? '0' + (date.getMonth() + 1)
  : date.getMonth() + 1) + '/';
 let Da =
  (date.getDate() < 10 ? '0' + date.getDate() : date.getDate()) + ' ';
 let hh =
  (date.getHours() < 10 ? '0' + date.getHours() : date.getHours()) + ':';
 let mm =
  (date.getMinutes() < 10 ? '0' + date.getMinutes() : date.getMinutes()) +
  ':';
 let ss =
  date.getSeconds() < 10 ? '0' + date.getSeconds() : date.getSeconds();
 return Ye + Mo + Da +hh + mm + ss
 }
 
//let value=dateFormmat(1234567890)
//console.log(value)
//2009/02/14 07:31:30

Date 实例-(get)

所有的 Date 实例都继承自 Date.prototype。修改 Date 构造函数的原型对象会影响到所有的 Date 实例。

Date.getDate()

根据本地时间,返回一个指定的日期对象为一个月中的第几天。getDate() 返回一个1 到 31的整数值

let date = new Date("December 25, 2019 11:11:00");
let day = date.getDate();

console.log(day)
//25

Date.getDay()
getDay() 返回一个整数值: 0 代表星期日, 1 代表星期一,2 代表星期二, 依次类推

Date.getFullYear()
getFullYear() 方法根据本地时间返回指定日期的年份。

Date.getMonth()
根据本地时间,返回一个指定的日期对象的月份,为基于0的值(0表示一年中的第一月)。

Date.getHours()
getHours() 方法根据本地时间,返回一个指定的日期对象的小时。getHours返回一个0 到 23之间的整数值。

Date.getMinutes()
getMinutes() 方法根据本地时间,返回一个指定的日期对象的分钟数。getMinutes 返回一个0 到 59的整数值

Date.getSeconds()
getSeconds() 方法根据本地时间,返回一个指定的日期对象的秒数,返回一个 0 到 59 的整数值。

Date.getMilliseconds()
getMilliseconds() 方法,根据本地时间,返回一个指定的日期对象的毫秒数。getMilliseconds() 方法返回一个0 到 999的整数。

Date.getTime()
getTime 方法的返回值一个数值,表示从1970年1月1日0时0分0秒(UTC,即协调世界时)距离该日期对象所代表时间的毫秒数。

Date 实例-(set)

Date.setDate()
setDate() 方法根据本地时间来指定一个日期对象的天数。
如果 dayValue 超出了月份的合理范围,setDate 将会相应地更新 Date 对象。例如,如果为 dayValue 指定0,那么日期就会被设置为上个月的最后一天。

Date.setFullYear()
setFullYear() 方法根据本地时间为一个日期对象设置年份
如果有一个参数超出了合理的范围,setFullYear 方法会更新其他参数值,日期对象的日期值也会被相应更新。 例如,为 monthValue 指定 15, 则年份会加1,月份值会为3。

Date.setHours()
setHours() 方法根据本地时间为一个日期对象设置小时数,返回从1970-01-01 00:00:00 UTC 到更新后的 日期 对象实例所表示时间的毫秒数。

如果有一个参数超出了合理范围,setHours 会相应地更新日期对象中的日期信息。例如,如果为 secondsValue 指定了 100,则分钟会加 1,然后秒数使用 40。

Date.setMilliseconds()
setMilliseconds() 方法会根据本地时间设置一个日期对象的豪秒数。

如果指定的数字超出了合理范围,则日期对象的时间信息会被相应地更新。例如,如果指定了 1005,则秒数加 1,豪秒数为 5。

Date.setMinutes()
setMinutes() 方法根据本地时间为一个日期对象设置分钟数。

如果有一个指定的参数超出了合理范围,setMinutes 会相应地更新日期对象中的时间信息。例如,为 secondsValue 指定 100,分钟数将会加 1,而秒数会为 40。

Date.setMonth()
setMonth() 方法根据本地时间为一个设置年份的日期对象设置月份

如果有一个指定的参数超出了合理范围,setMonth 会相应地更新日期对象中的日期信息。例如,为 monthValue 指定 15,则年份会加 1,月份将会使用 3。

Date.setSeconds()
setSeconds() 方法根据本地时间设置一个日期对象的秒数。

如果一个参数超出了合理范围, setSeconds 方法会相应地更新日期对象的时间信息。例如,为 secondsValue 指定 100,则日期对象的分钟数会相应地加 1,秒数将会使用 40。

Date.setTime()
setTime() 方法以一个表示从1970-1-1 00:00:00 UTC计时的毫秒数为来为 Date 对象设置时间。

希望本文所述对大家react程序设计有所帮助。

Javascript 相关文章推荐
解决 firefox 不支持 document.all的方法
Mar 12 Javascript
图片格式的JavaScript和CSS速查手册
Aug 20 Javascript
javascript 冒泡排序 正序和倒序实现代码
Dec 14 Javascript
JS弹出层单纯的绝对定位居中示例代码
Feb 18 Javascript
原生js获取宽高与jquery获取宽高的方法关系对比
Apr 04 Javascript
解决WordPress使用CDN后博文无法评论的错误
Dec 15 Javascript
jQuery实现三级菜单的代码
May 09 Javascript
js实现目录链接,内容跟着目录滚动显示的简单实例
Oct 15 Javascript
Vue EventBus自定义组件事件传递
Jun 25 Javascript
详解关于Vue2.0路由开启keep-alive时需要注意的地方
Sep 18 Javascript
深入理解JavaScript 中的执行上下文和执行栈
Oct 23 Javascript
微信浏览器下拉黑边解决方案 wScroollFix
Jan 21 Javascript
JavaScript 链表定义与使用方法示例
Apr 28 #Javascript
Vue 3.0 全家桶抢先体验
Apr 28 #Javascript
React生命周期原理与用法踩坑笔记
Apr 28 #Javascript
js最全的数组的降维5种办法(小结)
Apr 28 #Javascript
JS数组降维的实现Array.prototype.concat.apply([], arr)
Apr 28 #Javascript
React中Ref 的使用方法详解
Apr 28 #Javascript
在Webpack中用url-loader处理图片和字体的问题
Apr 28 #Javascript
You might like
PHP4实际应用经验篇(8)
2006/10/09 PHP
一个用mysql_odbc和php写的serach数据库程序
2006/10/09 PHP
php下用GD生成生成缩略图的两个选择和区别
2007/04/17 PHP
ThinkPHP路由详解
2015/07/27 PHP
使用Thinkphp框架开发移动端接口
2015/08/05 PHP
centos下file_put_contents()无法写入文件的原因及解决方法
2017/04/01 PHP
js left,right,mid函数
2008/06/10 Javascript
jQuery学习笔记之DOM对象和jQuery对象
2010/12/22 Javascript
js对数字的格式化使用说明
2011/01/12 Javascript
Js nodeType 属性全面解析
2013/11/14 Javascript
三种检测iPhone/iPad设备方向的方法
2014/04/23 Javascript
深入理解JavaScript系列(31):设计模式之代理模式详解
2015/03/03 Javascript
详解javascript实现瀑布流绝对式布局
2016/01/29 Javascript
让你一句话理解闭包(简单易懂)
2016/06/03 Javascript
Javascript表单特效之十大常用原理性样例代码大总结
2016/07/12 Javascript
如何在AngularJs中调用第三方插件库
2017/05/21 Javascript
js生成word中图片处理方法
2018/01/06 Javascript
小程序实现授权登陆的解决方案
2018/12/02 Javascript
js实现移动端吸顶效果
2020/01/08 Javascript
JavaScript实现沿五角星形线摆动的小圆实例详解
2020/07/28 Javascript
原生js实现购物车功能
2020/09/23 Javascript
下载安装setuptool和pip linux安装pip    
2014/01/24 Python
Python cookbook(数据结构与算法)在字典中将键映射到多个值上的方法
2018/02/18 Python
Python BS4库的安装与使用详解
2018/08/08 Python
基于wxPython的GUI实现输入对话框(2)
2019/02/27 Python
Python模块汇总(常用第三方库)
2019/10/07 Python
django 外键创建注意事项说明
2020/05/20 Python
购买一个高级域名:BuyDomains
2018/03/11 全球购物
本科生详细的自我评价
2013/09/19 职场文书
课外活动总结范文
2014/07/09 职场文书
心得体会的写法
2014/09/05 职场文书
2014年标准化工作总结
2014/12/17 职场文书
《1942》观后感
2015/06/08 职场文书
创业计划书之淘宝网店
2019/10/08 职场文书
Java框架入门之简单介绍SpringBoot框架
2021/06/18 Java/Android
win10此电脑打不开怎么办 win10双击此电脑无响应的解决办法
2022/07/23 数码科技