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 相关文章推荐
js身份证验证超强脚本
Oct 26 Javascript
Javascript 学习笔记 错误处理
Jul 30 Javascript
node.js中实现同步操作的3种实现方法
Dec 05 Javascript
基于javascript实现动态时钟效果
Aug 18 Javascript
JavaScript DOM节点操作方法总结
Aug 23 Javascript
浅谈jQuery的bind和unbind事件(绑定和解绑事件)
Mar 02 Javascript
利用vscode编写vue的简单配置详解
Jun 17 Javascript
js使用html2canvas实现屏幕截取的示例代码
Aug 28 Javascript
浅谈React和Redux的连接react-redux
Dec 04 Javascript
Bootstrap 中data-[*] 属性的整理
Mar 13 Javascript
vue+elementUI动态增加表单项并添加验证的代码详解
Dec 17 Vue.js
微信小程序实现下拉加载更多商品
Dec 29 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
深入理解PHP内核(一)
2015/11/10 PHP
java微信开发之上传下载多媒体文件
2016/06/24 PHP
laravel 自定义常量的两种方案
2019/10/14 PHP
JavaScript效率调优经验
2009/06/04 Javascript
jquery 操作两个select实现值之间的互相传递
2014/03/07 Javascript
js重写alert控件(适合学习js的新手朋友)
2014/08/24 Javascript
Jquery搜索父元素操作方法
2015/02/10 Javascript
jquery实现简单的遮罩层
2016/01/08 Javascript
探析浏览器执行JavaScript脚本加载与代码执行顺序
2016/01/12 Javascript
jquery弹出遮掩层效果【附实例代码】
2016/04/28 Javascript
正则表达式(语法篇推荐)
2016/06/24 Javascript
基于JavaScript实现熔岩灯效果导航菜单
2017/01/04 Javascript
基于jquery实现左右上下移动效果
2018/05/02 jQuery
vue2.0 路由模式mode=&quot;history&quot;的作用
2018/10/18 Javascript
vue学习笔记五:在vue项目里面使用引入公共方法详解
2019/04/04 Javascript
你可能从未使用过的11+个JavaScript特性(小结)
2020/01/08 Javascript
解决vue-cli@3.xx安装不成功的问题及搭建ts-vue项目
2020/02/09 Javascript
[00:52]黑暗之门更新 新英雄孽主驾临DOTA2
2016/08/24 DOTA
python代码检查工具pylint 让你的python更规范
2012/09/05 Python
python发送HTTP请求的方法小结
2015/07/08 Python
Python(TensorFlow框架)实现手写数字识别系统的方法
2018/05/29 Python
Python hmac模块使用实例解析
2019/12/24 Python
python使用正则表达式(Regular Expression)方法超详细
2019/12/30 Python
python GUI库图形界面开发之PyQt5 MDI(多文档窗口)QMidArea详细使用方法与实例
2020/03/05 Python
Django 实现将图片转为Base64,然后使用json传输
2020/03/27 Python
使用Numpy对特征中的异常值进行替换及条件替换方式
2020/06/08 Python
什么是serialVersionUID
2016/03/04 面试题
教师自我鉴定
2013/12/13 职场文书
2014年应届大学生自我评价
2014/01/09 职场文书
迎新生标语大全
2014/10/06 职场文书
2015年毕业实习工作总结
2014/12/12 职场文书
布达拉宫的导游词
2015/02/02 职场文书
幼儿园六一儿童节演讲稿
2015/03/19 职场文书
2015年护士节活动策划方案
2015/05/04 职场文书
JavaScript中MutationObServer监听DOM元素详情
2021/11/27 Javascript
vue组件vue-esign实现电子签名
2022/04/21 Vue.js