JavaScript工具函数——获取当前年月日和获取每月第一天和最后一天

215 阅读1分钟

获取当前年月日和当前月的第一天和最后一天

我们在开发中,经常也会遇到去获取当前的年月日或者当前月的第一天和最后一天,我们可以将这个需求作为一个工具函数来实现。

获取当前月份的最后一天时,我们不确定当前月到底是有三十天还是三十一天,那么我们可以逆向考虑,每个月的第一天,我们是明确知道的,那么我们可以倒着去推上个月的最后一天。

getMonth() 方法根据本地时间返回指定日期的月份(从 0 到 11)。实际月份需要加一。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>获取当前时间</title>
</head>
<body>
    <script>
        function getTime(date = new Date()) {
            var y = date.getFullYear();
            var m = date.getMonth() + 1;
            m = m < 10 ? '0' + m : m;
            var d = date.getDate();
            d = d < 10 ? '0' + d : d;
            return y + '/' + m + '/' + d;
        }
        console.log(getTime());
        function getFirstLastDay() {
            var now = new Date();
            var year = now.getFullYear();
            var month = now.getMonth();
            var first = new Date(year,month,1) // 本月开始时间
            var last = new Date(year,month+1,0); // 下个月往前推一天 0 往前走一日,-1 走两天
            first = first.getMonth() + 1 + '/' + '0' + first.getDate();
            last = last.getMonth() + 1 + '/' + last.getDate();
            return {first,last};
        }
        console.log(getFirstLastDay());
    </script>
</body>
</html>

image.png