JavaScript 获取当前年月日时分秒的两种实现方式

作者:函数茶馆时间:2026-10-31 14:28:54浏览:328

本文介绍了在 JavaScript 中获取当前年月日时分秒的两种常用方法。首先详细解析了使用原生 new Date 对象进行时间格式化及补零处理的代码实现,随后展示了如何借助 moment.js 库简化时间操作,包括格式化、日期增减及获取当月天数等功能。

一、使用 new Date() 方法:

export let getDate = () => {
    // 补零
    let addZero = (t) => {
        return t < 10 ? '0' + t : t;
    }
    let time = new Date();
    let Y = time.getFullYear(), // 年
        M = time.getMonth() + 1, // 月
        D = time.getDate(), // 日
        h = time.getHours(), // 时
        m = time.getMinutes(), // 分
        s = time.getSeconds(); // 秒
    if (M > 12) {
        // 注: new Date()的年月日的拼接,在月份为12月时,会出现 获取月份+1 后,为13月的bug,需要特殊处理。用moment第三方插件获取时间也可避免此问题。
        M = M - 12;
    }
    return `${Y}-${addZero(M)}-${addZero(D)} ${addZero(h)}:${addZero(m)}:${addZero(s)}`;
}
// 调用
import { getDate } from "./utils/getTime.js";
getDate(); // 2024-03-31 09:34:31

二、使用 moment.js 库:

//  下载:
npm i moment
或
yarn add moment
// 引入
import moment from "moment";
// 使用
moment().format('YYYY-MM-DD HH:mm:ss'); // 获取当前时间:2024-03-31 09:38:02
moment().startOf('day').format('YYYY-MM-DD HH:mm:ss'); // 获取今天0时0分0秒:2024-03-31 00:00:00
moment().endOf('day').format('YYYY-MM-DD HH:mm:ss'); // 获取今天23时59分59秒:2024-03-31 23:59:59
moment().daysInMonth(); // 获取当月的总天数:31
moment().valueOf(); // 获取时间戳:1711849082142
moment().add(-1, 'y').format('YYYY'); // 上一年:2023
moment().add(0, 'y').format('YYYY'); // 今年:2024
moment().add(1, 'y').format('YYYY'); // 下一年:2025

附:格式化日期对象以获取当前 年月日 星期几 时分秒

function getNowDate(){
  var date = new Date();
  var sign2 = ":";
  var year = date.getFullYear() // 年
  var month = date.getMonth() + 1; // 月
  var day = date.getDate(); // 日
  var hour = date.getHours(); // 时
  var minutes = date.getMinutes(); // 分
  var seconds = date.getSeconds() //秒
  var weekArr = [ '星期天','星期一', '星期二', '星期三', '星期四', '星期五', '星期六'];
  var week = weekArr[date.getDay()];
  // 给一位数的数据前面加 “0”
  if (month >= 1 && month <= 9) {
    month = "0" + month;
  }
  if (day >= 0 && day <= 9) {
    day = "0" + day;
  }
  if (hour >= 0 && hour <= 9) {
    hour = "0" + hour;
  }
  if (minutes >= 0 && minutes <= 9) {
    minutes = "0" + minutes;
  }
  if (seconds >= 0 && seconds <= 9) {
    seconds = "0" + seconds;
  }
  // return year + "-" + month + "-" + day + " " + hour + sign2 + minutes + sign2 + seconds;
  return year + "-" + month + "-" + day + "  "+week +"  " + hour + sign2 + minutes + sign2 + seconds;
}

总结

至此,关于 js 获取当前年月日时分秒的教程介绍完毕,更多相关 js 获取当前年月日时分秒的信息请查阅本站历史文章或继续浏览下方相关链接,希望读者日后多多支持本站!

作者最新文章