【JavaScript】Date对象(创建时间对象、常用Date方法总结)

简介: 在js中使用Date对象表示时间

创建一个时间对象

直接使用构造函数创建一个时间对象,则返回的是当前代码执行的时间。

var time = new Date();
console.log(time);
//Fri Jul 01 2022 11:04:35 GMT+0800 (中国标准时间)

创建一个自定义时间对象

要创建一个自定义时间对象时,需要在构造函数中传递一个时间字符串做为参数。

日期格式为:月/日/年 时:分:秒

var time2 = new Date('6/7/2019 8:00:00');
console.log(time2)
//Fri Jun 07 2019 08:00:00 GMT+0800 (中国标准时间)

Date方法

getDate() 获取天

返回当前Date对象中的一个月的第几天。

var time1 = new Date();
console.log(time1);
//Fri Jul 01 2022 11:18:49 GMT+0800 (中国标准时间)
console.log(time1.getDate());
//1

getDay() 获取周几

返回当前Date对象中的星期几。

注意:当时间为周日时返回0。即1-6表示周一到周六,0表示周日。

var time1 = new Date();
console.log(time1);
//Fri Jul 01 2022 11:18:49 GMT+0800 (中国标准时间)
console.log(time1.getDay())
//5

getMonth() 获取月份

返回当前Date对象中的月份。

注意:返回月份时返回的数在0-11区间表示1月到12月,0表示1月,以此类推。

var time1 = new Date();
console.log(time1);
//Fri Jul 01 2022 11:18:49 GMT+0800 (中国标准时间)
console.log(time1.getMonth());
//6

getFullYear() 获取年份

返回当前Date对象中的年份。

var time1 = new Date();
console.log(time1);
//Fri Jul 01 2022 11:18:49 GMT+0800 (中国标准时间)
console.log(time1.getFullYear());
//2022

获取时/分/秒/毫秒

getHours()返回当前Date对象的小时数

getMinutes()返回分钟数

getSeconds()返回秒数

getMilliseconds()返回毫秒数

var time1 = new Date();
console.log(time1);
//Fri Jul 01 2022 11:40:20 GMT+0800 (中国标准时间)
console.log(time1.getHours()); //返回小时
//11
console.log(time1.getMinutes()); //返回分钟
//40
console.log(time1.getSeconds()); //返回秒
//20
console.log(time1.getMilliseconds()); //返回毫秒
//893

getTime() 获取时间戳

时间戳指的是从格林威治标准时间1970年1月1日0时0分0秒当前日期所花费的毫秒数(1秒=1000毫秒)。

因为时间的相互转换特别麻烦,因此计算机底层保存时间都是用时间戳来保存的。

var time1 = new Date();
console.log(time1);
//Fri Jul 01 2022 11:54:40 GMT+0800 (中国标准时间)
console.log(time1.getTime());
//1656647680176

Date.now() 获取当前时间戳

返回的时当前Date对象的时间戳

console.log(Date.now()); //返回当前时间戳
//1656648040077

可以利用时间戳来测试代码性能/运行速度

var start_time = Date.now();
for(var i = 0;i < 50 ; i++){
    console.log(i);
}
var end_time = Date.now();
var time = end_time - start_time;
console.log('该for循环花费了'+time/1000 +'s')

e56ebbe3287d4eb1aa1a143f179ca3bd.png



相关文章
|
1月前
|
JavaScript 前端开发
如何在 JavaScript 中使用 __proto__ 实现对象的继承?
使用`__proto__`实现对象继承时需要注意原型链的完整性和属性方法的正确继承,避免出现意外的行为和错误。同时,在现代JavaScript中,也可以使用`class`和`extends`关键字来实现更简洁和直观的继承语法,但理解基于`__proto__`的继承方式对于深入理解JavaScript的面向对象编程和原型链机制仍然具有重要意义。
|
28天前
|
JavaScript 前端开发 程序员
前端原生Js批量修改页面元素属性的2个方法
原生 Js 的 getElementsByClassName 和 querySelectorAll 都能获取批量的页面元素,但是它们之间有些细微的差别,稍不注意,就很容易弄错!
|
1月前
|
Web App开发 JavaScript 前端开发
如何确保 Math 对象的方法在不同的 JavaScript 环境中具有一致的精度?
【10月更文挑战第29天】通过遵循标准和最佳实践、采用固定精度计算、进行全面的测试与验证、避免隐式类型转换以及持续关注和更新等方法,可以在很大程度上确保Math对象的方法在不同的JavaScript环境中具有一致的精度,从而提高代码的可靠性和可移植性。
|
26天前
|
监控 JavaScript Java
Node.js中内存泄漏的检测方法
检测内存泄漏需要综合运用多种方法,并结合实际的应用场景和代码特点进行分析。及时发现和解决内存泄漏问题,可以提高应用的稳定性和性能,避免潜在的风险和故障。同时,不断学习和掌握内存管理的知识,也是有效预防内存泄漏的重要途径。
122 52
|
1月前
|
JavaScript 前端开发 索引
js中DOM的基础方法
【10月更文挑战第31天】这些DOM基础方法是操作网页文档结构和实现交互效果的重要工具,通过它们可以动态地改变页面的内容、样式和行为,为用户提供丰富的交互体验。
|
1月前
|
缓存 JavaScript UED
js中BOM中的方法
【10月更文挑战第31天】
|
29天前
|
JSON 前端开发 JavaScript
JavaScript中对象的数据拷贝
本文介绍了JavaScript中对象数据拷贝的问题及解决方案。作者首先解释了对象赋值时地址共享导致的值同步变化现象,随后提供了五种解决方法:手动复制、`Object.assign`、扩展运算符、`JSON.stringify`与`JSON.parse`组合以及自定义深拷贝函数。每种方法都有其适用场景和局限性,文章最后鼓励读者关注作者以获取更多前端知识分享。
18 1
JavaScript中对象的数据拷贝
|
28天前
|
缓存 JavaScript 前端开发
JavaScript 与 DOM 交互的基础及进阶技巧,涵盖 DOM 获取、修改、创建、删除元素的方法,事件处理,性能优化及与其他前端技术的结合,助你构建动态交互的网页应用
本文深入讲解了 JavaScript 与 DOM 交互的基础及进阶技巧,涵盖 DOM 获取、修改、创建、删除元素的方法,事件处理,性能优化及与其他前端技术的结合,助你构建动态交互的网页应用。
41 5
|
29天前
|
JavaScript 前端开发
js中的bind,call,apply方法的区别以及用法
JavaScript中,`bind`、`call`和`apply`均可改变函数的`this`指向并传递参数。其中,`bind`返回一个新函数,不立即执行;`call`和`apply`则立即执行,且`apply`的参数以数组形式传递。三者在改变`this`指向及传参上功能相似,但在执行时机和参数传递方式上有所区别。
26 1
|
1月前
|
JavaScript 前端开发
.js方法参数argument
【10月更文挑战第26天】`arguments` 对象为JavaScript函数提供了一种灵活处理参数的方式,能够满足各种不同的参数传递和处理需求,在实际开发中具有广泛的应用价值。
39 7