[前端] JS中Date的一些常用方法小结

1879 0
黑夜隐士 2022-11-8 22:07:31 | 显示全部楼层 |阅读模式
目录

    内置对象Date
      创建Date对象 日期的格式化
        Date对象自带的方法
      获取时间戳
    附:获得Date总的毫秒数(距离1970年1月1号过了多少毫秒) 总结


内置对象Date

Date对象在实际开发中,也使用得非常频繁,它是一个内置对象,用于表示日期和时间。
Date是用来处理日期和时间的对象,但是与Math对象不同的是:Date是一个构造函数,需要实例化之后才能使用。
接下来第一步:创建Date对象

创建Date对象

创建Date对象有两种方法:
    创建时不传参数:
    在不传递参数的情况下,最后创建的结果是返回系统当前的时间对象
    var date = new Date(); console.log(date); // Wed Sep 28 2022 18:06:49 GMT+0800 (中国标准时间) console.log(typeof date); // object
    创建时传递参数:
    传递参数时表示创建指定时间的对象,参数可以是字符串,也可以是数字,还可以是时间戳。我们按照传递参数的类型来分别讲解。


    参数为字符串
    var date = new Date("2022-09-28 18:06:49"); var date = new Date("2022/09/28 18:06:49"); var date = new Date("2022-09-28T18:06:49"); var date = new Date("2022/09/28T18:06:49"); var date = new Date("2022-09-28"); var date = new Date("2022/09/28"); var date = new Date("2022-09-28T00:00:00"); var ate = new Date("2022/09/28T00:00:00");

通过上面的代码,我们可以看到在将时间字符串作为参数传入的时候,我们要遵循的格式就是:年月日 具体时间,其中年月日之间使用-或者/连接,具体时间使用:连接;年月日和具体时间的连接可以使用空格隔开或者T隔开。
    参数为多个数字
    var date = new Date(x,y,z,a,b,c,d);


    x:表示年份,必须传递,否则会报错 y: 表示月份,从0开始,0表示1月,1表示2月,以此类推,如果不传递,默认为0 z: 表示日期,如果不传递,默认为1 a: 表示小时,如果不传递,默认为0 b: 表示分钟,如果不传递,默认为0 c: 表示秒,如果不传递,默认为0 d: 表示毫秒,如果不传递,默认为0
多个参数之间我们使用逗号间隔,如果不传递的参数,会使用默认值(年份除外,年份必须传参)。
    参数为时间戳
    var date = new Date(时间戳);


日期的格式化

在实际开发中,我们经常需要将日期格式化,比如:将日期格式化为:2022-09-28 18:06:49,这个时候我们就需要使用到Date对象的format方法。
或者我们需要获取日期的指定部分,这个时候就需要用到Date对象自带的方法了。

Date对象自带的方法

方法名含义备注
getFullYear()获取年份
getMonth()获取月:0-110代表一月
getDate()获取日:1-31
getDay()获取星期:0-60代表周日;1代表周一
getHours()获取小时:0-23
getMinutes()获取分钟:0-59
getSeconds()获取秒:0-59
getMilliseconds()获取毫秒1s = 1000ms

获取时间戳

什么是时间戳呢?
时间戳就是从格林威治标准时间的1970年1月1日,0时0分0秒到当前日期所花费的毫秒数(1秒 = 1000毫秒)。
那为什么需要时间戳呢?
这是因为在计算机中,时间是以数字的形式存储的,而不是以字符串的形式存储的,所以我们需要将时间转换为数字,这个数字就是时间戳。
而时间戳的存在就是为了统一时间的单位。
如何获取时间戳呢?
下面集中常见的方法:
    +new Date():获取当前时间的时间戳
    value = +new Date();
    Date对象的getTime方法
    var date = new Date();
    Date对象的valueOf方法
    var date = new Date();

这三种方法都可以获取当前时间的时间戳。使用频率从上往下一次递减。

附:获得Date总的毫秒数(距离1970年1月1号过了多少毫秒)

valueOf();
var date = new Date();
console.log(date.valueOf());//1628750819687
getTime();
var date = new Date();
console.log(date.getTime());//1628750819687
简单写法
var date1 = +new Date();
console.log(date1);//1628750819687
H5新增的方法
console.log(Date.now());//1628750819687

总结

到此这篇关于JS中Date的一些常用方法的文章就介绍到这了,更多相关JS Date常用方法内容请搜索中国红客联盟以前的文章或继续浏览下面的相关文章希望大家以后多多支持中国红客联盟!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

中国红客联盟公众号

联系站长QQ:5520533

admin@chnhonker.com
Copyright © 2001-2025 Discuz Team. Powered by Discuz! X3.5 ( 粤ICP备13060014号 )|天天打卡 本站已运行