在JavaScript中,如果你想要将一个包含日期和时间(时分秒)的Date
对象或时间字符串去掉时分秒部分,只保留日期,你可以采用以下几种方法:
Date
对象的方法function getOnlyDate(date) {
const year = date.getFullYear();
const month = ('0' + (date.getMonth() + 1)).slice(-2); // 月份是从0开始的,所以需要+1
const day = ('0' + date.getDate()).slice(-2);
return `${year}-${month}-${day}`;
}
// 使用示例
const now = new Date();
const onlyDate = getOnlyDate(now);
console.log(onlyDate); // 输出格式如 "2023-04-05"
toLocaleDateString
方法const now = new Date();
const onlyDate = now.toLocaleDateString('zh-CN', { year: 'numeric', month: '2-digit', day: '2-digit' });
console.log(onlyDate); // 输出格式可能因浏览器而异,如 "2023/04/05" 或 "2023-04-05"
如果你有一个时间字符串,例如"2023-04-05T12:34:56"
,你可以使用字符串方法来去掉时分秒部分:
function removeTimeFromString(dateTimeString) {
return dateTimeString.split('T')[0];
}
// 使用示例
const dateTimeString = "2023-04-05T12:34:56";
const onlyDate = removeTimeFromString(dateTimeString);
console.log(onlyDate); // 输出 "2023-04-05"
如果你已经在项目中使用了第三方日期处理库,如moment.js
,你可以很方便地去掉时分秒:
// 需要先引入moment.js库
const moment = require('moment');
const now = moment();
const onlyDate = now.format('YYYY-MM-DD');
console.log(onlyDate); // 输出 "2023-04-05"
选择哪种方法取决于你的具体需求和项目环境。如果只是简单的日期处理,使用原生的Date
对象方法就足够了。如果项目中已经使用了日期处理库,那么利用这些库的功能会更加方便。
领取专属 10元无门槛券
手把手带您无忧上云