网站首页 > 基础教程 正文
上一篇文章我们学习了Number内置对象和Math内置对象,在JS中还有很多内置的对象和方法,接下来我们一起来学习一下经常用到的一些内置方法。有的可以直接通过内置类直接调用,有的则需要通过实例调用
一、Date类相关
Date在JS中是一个关于处理时间的类,我们可以通过Date类获取到当前的时间、当前的时间戳、不同时区的时间等等
1、Date实例
Date实例在不传参的情况下,会返回当前时间(字符串,时区和你的电脑时区一致)
Date类接受两种参数,一种接受3个Number类型的参数分别代表年、月、日
所以,这种传参方法的月份是从0开始的,月份是0就代表是1月
另外一种接受一个"yyyy-MM-dd hh:mm:ss"格式的字符串,表示年-月-日 时:分:秒的格式
2、Date的实例方法
我们看到了可以通过Date()实例获得当前时间,如果只想获取当前的年份或者月份等,可以通过Date类相关的实例方法获得
注意:
1、上面的方法均是实例方法,需要创建Date实例才能调用,不能直接通过Date调用
2、获取当前日期的方法是getDate,而非getDay
3、getMonth方法是从0开始的,也就是说getMonth返回的应该是当前月份-1,例如图中的getMonth返回的就是3,而非4
4、getDay方法返回当前是周几,从星期一开始返回,返回值从1开始
3、获取当前时间戳
时间戳是基于1970年1月1日(世界标准时间)起的毫秒数,目前用的较多的时间戳有两种,一种是精确到毫秒的时间戳(13位数),一种是精确到秒的时间戳(10位数),在原生的JS中无法获直接取精确到秒的时间戳,只能获取精确到毫秒的时间戳(如果需要精确到秒,可以通过一些第三方库,或者结合其他方法获得)
JS可以通过Date的静态方法(可以直接通过类名调用,不能通过实例调用)的now方法获取到当前的13位时间戳
注意
1、now是Date类的静态方法,直接通过Date类调用,不可以通过Date相关实例调用
2、返回的是一个13位的Number类型数据,表示到目前为止,距离1970年1月1日过去的毫秒数
3、返回的时间戳会根据你当前电脑的时区而发生改变(这一点在项目部署上线时要特别注意,很可能项目部署环境的时区和你开发用的电脑的时区不一样)
使用时间戳的好处是可以很轻松的计算出两个日期相距了多久,所以涉及到时间计算的问题时,通常会使用时间戳的形式来表示时间
4、获取指定日期的时间戳
结合前面学的知识,我们可以先通过new Date(指定时间)来生成具体的指定的时间,再通过valueOf方法获取到对应的时间戳
因为我电脑的时区是北京时间,所以北京时间1970年1月1日0时0分0秒是世界标准时间的1969年12月31日16时0分0秒,而时间戳是从世界标准时间的1970年1月1日0时0分0秒开始的,所以我们想获取到0时间戳,应该将日期改为1970年1月1日8时0分0秒
注意
1、千万注意好时区问题
2、valueOf方法是实例方法,需要通过Date实例才能调用
3、返回的时间戳是Number类型
猜你喜欢
- 2024-11-19 JavaScript 根据指定的字符串格式格式化日期
- 2024-11-19 前端时间格式化下,让用户看时间一看就懂的方法
- 2024-11-19 WPS表格如何在宏代码中判断日期类型及获取年、月、日
- 2024-11-19 快来领取,33个常用JavaScript功能已封装成方法,拿来即用
- 2024-11-19 JavaScript中的日期对象
- 2024-11-19 十年前的js代码
- 2024-11-19 如何在JavaScript/Vue中获取当前时间并格式化输出精确到时分秒
- 2024-11-19 Node.js 实现抢票小工具&短信通知提醒(下)「干货」
- 2024-11-19 JS短文:如何确定一个月中有多少天?
- 2024-11-19 如何在Vue.js中对时间格式化
- 最近发表
- 标签列表
-
- jsp (69)
- gitpush (78)
- gitreset (66)
- python字典 (67)
- dockercp (63)
- gitclone命令 (63)
- dockersave (62)
- linux命令大全 (65)
- pythonif (86)
- location.href (69)
- dockerexec (65)
- tail-f (79)
- queryselectorall (63)
- location.search (79)
- bootstrap教程 (74)
- deletesql (62)
- linuxgzip (68)
- 字符串连接 (73)
- html标签 (69)
- c++初始化列表 (64)
- mysqlinnodbmyisam区别 (63)
- arraylistadd (66)
- mysqldatesub函数 (63)
- window10java环境变量设置 (66)
- c++虚函数和纯虚函数的区别 (66)