javascript - new Date() 与 Utilities.formatDate(new Date())
问题描述
谁能告诉我为什么这段代码会产生两个不同的日期?
let now = new Date(); // today's date (1/2/2021)
Logger.log(now); // Sat Jan 02 09:42:47 GMT-08:00 2021
Logger.log(new Date(now.getTime()-(2*1000*60*60*24))); // Thu Dec 31 09:42:47 GMT-08:00 2020
Logger.log(Utilities.formatDate(new Date(now.getTime()-(2*1000*60*60*24)), "GMT-8", "MM/d/YYYY")); // 12/31/2021
为什么要将Utilities.formateDate()
日期从12/31/2020更改为12/31/2021?
******** 解决方案 *********
将日期格式从 更改"MM/d/YYYY"
为"MM/d/yyyy"
。
解决方案
这只是一个简单的格式问题。 看这里
这个:
Logger.log(Utilities.formatDate(new Date(now.getTime()-(2*1000*60*60*24)), "GMT-8", "MM/d/YYYY"));
应该是这样的:
Logger.log(Utilities.formatDate(new Date(now.getTime()-(2*1000*60*60*24)), "GMT-8", "MM/d/yyyy"));
换句话说,只需将大写字母 Y 的小写字母 y 设置为小写字母,就可以了。
推荐阅读
- openrefine - OpenRefine:如果该行中的特定单元格为空,则删除该行
- python - 如何在 kivy GridLayout 中使用超过 1 个按钮?[关闭]
- sqlite - 如何在 Sqlite 中查询 ODBC 连接
- css - 双端动画 CSS
- ruby - 如何在 Ruby 中获取编码数据的值?
- java - JPA 规范 - 过滤嵌套列表对象
- gtk - 带有 gtk API 的垂直居中窗口
- java - 创建 POJO 类的 JUnit 测试以测试对象创建 - Java
- html - 如何将导航栏项目向右对齐(不是品牌)
- sql - 如何禁止在 Oracle 的表上同时在两个字段中输入相同的值?