Javascript 从日期字符串获取月数
我尝试过搜索,但找不到任何复制我试图实现的答案 如果我在控制台上记录以下内容:Javascript 从日期字符串获取月数,javascript,Javascript,我尝试过搜索,但找不到任何复制我试图实现的答案 如果我在控制台上记录以下内容: console.log(new Date().getMonth()) 它的输出为10 我要做的是获取以下日期字符串: "2020-11-30T08:37:20.717Z" 并将其转换为“10”表示月份,如上面的日期对象,而不是完整的日期字符串。在这个字符串中,数字是'11',所以我不能直接把它取出来,除非我从中减去1,也许吧 显然,在12月份,上面控制台日志的输出将是11。。。但我希望日期字符
console.log(new Date().getMonth())
它的输出为10
我要做的是获取以下日期字符串:
"2020-11-30T08:37:20.717Z"
并将其转换为“10”表示月份,如上面的日期对象,而不是完整的日期字符串。在这个字符串中,数字是'11',所以我不能直接把它取出来,除非我从中减去1,也许吧
显然,在12月份,上面控制台日志的输出将是11。。。但我希望日期字符串保持为10,以表示11月
但是我该怎么做呢?我见过其他例子,它们将其转换为月份名称,但我只希望它与Date对象相同
任何指针都很好-希望这很清楚。您可以从字符串构造一个对象并调用getMonth()
console.log(新日期(“2020-11-30T08:37:20.717Z”).getMonth()代码>是的,您需要减去
这比创建日期对象更安全,因为时区可能会将月份移动到日期之前或之后的月份
const dString=“2020-10-31T23:00:00.000Z”
常量mmFromString=dString.match(/-(\d{2})-/)[1]
console.log(mmFromString-1);//9(JS 10月)在任何时区
const d=新日期(dString)
常量mmFromDate=d.getMonth();
console.log(mmFromDate)//10(JS十一月)在我的时区
这是否回答了您的问题?不管日期字符串中的月份如何,您总是想要10吗?Russ J-不,不是。还有Zain,没有。。我希望它随着月份的变化而动态变化,这只是一个解释得不好的例子。:-)那么你能给我们一个更好的解释吗?这将在我的时区在月底晚上11点左右失败