首页技术文章正文

JavaScript Date对象常用方法有哪些?

更新时间:2021-11-17 来源:黑马程序员 浏览量:

IT培训班

JavaScript中的日期对象用来处理日期和时间。例如,秒杀活动中日期的实时显示、时钟效果、在线日历等。下面将对日期对象进行详细讲解。

日期对象的使用

JavaScript中的日期对象需要使用new Date()实例化对象才能使用,Date()是日期对象的构造函数。在创建日期对象时,可以为Date()构造函数传入一些参数,来表示具体的日期,其创建方式如下。

<script>
    // 方式1:没有参数,使用当前系统的当前时间作为对象保存的时间
    var datel = new Date();
    //输出结果:Wed Nov 17 2021 14:59:56 GMT+0800 (中国标准时间)
    console.log(datel);
    // 方式2:传入年、月、日、时、分、秒(月的范围是0~11,即真实月份-1)
    var date2 =new Date(2019,10,16,10, 57,56);
    //输出结果:Sat Nov 16 2019 10:57:56 GMT+0800(中国标准时间)
    console.log(date2);
    // 用字符串表示日期和时间
    var date3 = new Date('2019-10-16 10:57:56');
    // 输出结果:Wed Oct 16 2019 10:57:56 GMT+0800(中国标准时间)
    console.log(date3);
</script>

在使用方式1时,其返回的datel对象保存的是对象创建时的时间;使用方式2时,最少需要指定年、月两个参数,后面的参数在省略时会自动使用默认值;使用方式3时,最少需要指定年份。另外,当传人的数值大于合理范围时,会自动转换成相邻数值(如方式2将月份设为-1表示去年12月,设为12表示明年1月)。

在获取到日期对象后,直接输出对象得到的是一个字符串 表示的日期和时间。如果想要用其他格式来表示这个日期和时间,可以通过调用日期对象的相关方法来实现。日期对象的常用方法分为get和set两大类,分别如表1和表2所示。

Date对象的常用get方法

方法

作用

getFullYear() 获取表示年份的4位数字
getMouth() 获取月份,范围为0~ 11 (0表示一月, 1表示二月,依次类推)
getDate() 获取月份中的某一天,范围1~31
getHours() 获取小时数,范围为0~23
getMinutes() 获取分钟数,范围为0~59
getSeconds() 获取秒数,范围为0~59
getMilliseconds() 获取毫秒数,范围为0~999
getTime() 获取从1970-01-01 00:00:00 距离Date对象所代表时间的毫秒数

表1


Date对象的常用get方法

方法

作用

setFullYear(value) 设置年份
setMouth(value) 设置月份
setDate(value) 设置月份中的某一天
setHours() 设置小时数
setMinutes() 设置分钟数
setSeconds() 设置秒数
setMilliseconds() 设置毫秒数
setTime() 通过从1970-01-01 00:00:00 计时的毫秒数来设置时间

表2


下面我们通过具体代码演示Date对象的使用,在控制台中输出当前日期。

<script>
    var date = new Date();              // 基于当前日期时间创建Date对象
    var year = date.getFullYear();      //获取年
    var month = date.getMonth() + 1;    //获取月,范围为0~ 11 (0表示一月, 1表示二月,依次类推)
    var day = date.getDate();           //获取日
    //通过数组将星期值转换为字符串
    var week = ['星期日', '星期一', '星期二', '星期三', '星期四', '星期五', '星期六'];
    //输出date对象保存的时间,示例:今天是2021年11月17日星期三
    console.log('今天是' + year + '年'+ month + '月'+ day + '日' + week[date.getDate() % 7]);
</script>

1637137263871_运行结果.jpg

在上述代码中,第9行的week[date.getDay() % 7]用来从date对象中获取星期值,然后作为数组的索引到week数组中取出对应的星期字符串。

在开发中,还经常需要将日期对象中的时间转换成指定的格式,示例代码如下。

<script>
    //返回当前时间,格式为:时:分:秒,用两位数字表示
    function getTime() {
        var time = new Date();
        var h = time.getHours();
        h = h<10 ? '0'+ h:h;
        var m = time.getMinutes();
        m = m<10 ? '0'+ m:m;
        var s = time.getSeconds();
        s = s<10 ? '0' + s:s;
        return h +':'+ m +':'+ s;
    }
    console.log(getTime());     //输出结果示例: 15:06:55
</script>

在上述代码中,第6、8、10行代码用来判断给定数字是否为一位数,如果是一位数则在前面加上“0”。



猜你喜欢

Math对象的常用方法有哪些?如何使用?

JavaScript中let和var和const有什么区别?

javascript开发工具有哪些?

黑马程序员HTML&JS+前端课程

分享到:
在线咨询 我要报名
和我们在线交谈!