js获取年月日时分秒 编程实现 注意事项(方法整理汇总1)
下面为大家详细讲解如何使用JS获取当前年月日的方法及格式整理汇总。
方法及格式整理汇总
方法一:new Date()方法
使用new Date()
方法可以获取当前时间,该方法返回表示当前本地时间的新 Date 对象。
const now = new Date();
const year = now.getFullYear(); // 年
const month = now.getMonth() + 1; // 月
const date = now.getDate(); // 日
console.log(`${year}-${month}-${date}`); // 2022-5-7
方法二:Date.now()方法
使用Date.now()
方法可以获取自1970年1月1日0时0分0秒以来的当前时间(毫秒)。
const timestamp = Date.now();
const date = new Date(timestamp);
const year = date.getFullYear(); // 年
const month = date.getMonth() + 1; // 月
const day = date.getDate(); // 日
console.log(`${year}年${month}月${day}日`); // 2022年5月7日
方法三:moment.js库
moment.js是一个第三方库,可以简化日期格式化,计算时间差等操作。需要先安装moment.js库(npm install moment
)。
const moment = require('moment');
moment.locale('zh-cn'); // 设置语言为中文
console.log(moment().format('YYYY年MM月DD日')); // 2022年5月7日
格式说明
标准语法
符号 | 定义 |
---|---|
YYYY | 4位数字形式的完整年份 |
YY | 2位数字形式的年份 |
MM | 数字形式的月份,有前导零 |
M | 数字形式的月份,没有前导零 |
DD | 数字形式的日期,有前导零 |
D | 数字形式的日期,没有前导零 |
常用语法
符号 | 定义 |
---|---|
YYYY-MM-DD | 年-月-日 |
YYYY/MM/DD | 年/月/日 |
YYYY年MM月DD日 | 年月日中文格式 |
YYYY年MM月 | 年月中文格式 |
MM/DD/YYYY | 月/日/年 |
D/M/YYYY | 日期忽略前导零 |
示例说明
现在假设我们需要获取明天的日期。
const now = new Date();
const tomorrow = new Date(+now+86400000);
const year = tomorrow.getFullYear(); // 年
const month = tomorrow.getMonth() + 1; // 月
const date = tomorrow.getDate(); // 日
console.log(`${year}-${month}-${date}`); // 2022-5-8
以上示例是使用方法一new Date()
方法获取。可以看出,很容易就求出明天的年月日,只需要将当前时间加86400000毫秒(一天毫秒数)即可。
再看一个需求,需要显示本周一日期。
const now = new Date();
const weekIndex = now.getDay(); // 获取当前星期几
const monday = new Date(now-((weekIndex-1)*86400000));
const year = monday.getFullYear(); // 年
const month = monday.getMonth() + 1; // 月
const date = monday.getDate(); // 日
console.log(`${year}-${month}-${date}`); // 2022-5-2
以上示例同样是使用方法一new Date()
方法获取,先获取当前星期几的数字形式,再用当天减去星期几的天数乘以86400000(一天毫秒数),即可得到本周一日期。