You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何从YYYY-MM-DD格式的JS日期字符串中获取整数类型的年、月值?

提取年、月整数值的两种实现方案

方案1:直接拆分字符串(无额外依赖)

拿到的YYYY-MM-DD格式字符串结构固定,直接按短横线拆分后转整数即可:

// 示例日期字符串
const dateStr = '2021-10-13';
// 拆分得到 [年, 月, 日] 字符串数组
const dateArr = dateStr.split('-');
// 转成整数类型
const year = parseInt(dateArr[0], 10); // 输出 2021
const month = parseInt(dateArr[1], 10); // 输出 10

该方法性能最优,不需要依赖任何日期处理库,适合仅需要提取年月的简单场景。

方案2:通过moment库获取(项目已引入moment时推荐)

如果你的项目已经接入了moment库,不需要先format成字符串再拆分,直接从moment实例中取值即可,容错率更高:

// 从原始日期对象生成moment实例
const momentIns = moment(Date);
const year = momentIns.year(); // 直接返回整数类型年份 2021
// moment的month()方法返回值为0-11(对应1-12月),需+1得到自然月份
const month = momentIns.month() + 1; // 返回整数类型月份 10

如果你手上只有format后的字符串,也可以重新解析后取值:

const dateStr = '2021-10-13';
const year = moment(dateStr, 'YYYY-MM-DD').year();
const month = moment(dateStr, 'YYYY-MM-DD').month() + 1;

内容的提问来源于stack exchange,提问作者Hakan Özel

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 05:24:01