JS Date()需要错误的数据来返回正确的结果
JS Date() required incorrect data to return correct result
我正在创建一个必须"永远"过期的cookie,虽然我不确定这是否可能,所以作为妥协,我决定将"expires:"日期设置为2099/12/31 23:59:59。然而,为了得到这个日期,我需要这样设置:
var killdate = new Date(2099, 11, 31, 23, 59, 59);
现在,除非我错过了什么,否则没有11月31日,所以我为什么要这样设置日期呢?
这更多的是一个好奇的事情,而不是我的代码的主要问题(尽管,我想确保我没有搞砸任何东西),但是我的在线研究并没有成功地为我清理它。
谢谢
From MDN docs:
表示月份的整数值,从1月开始的0到12月的11。
月份是从0-11,而不是1-12。您设置的日期实际上是2099年12月31日。
这些天数是任意月份中较长的天数,而不是特定的天数。
Max hours = 23
Max minutes = 59
Max seconds = 59
Max days = 31
Max months = 12
Max years = varies/changes
他们从不相互依赖。我认为如果你使用UNIX时间戳,它们会说明每个月的天数
请注意,某些浏览器在日期超过2038
时存在问题(当unix epoch time
超过32-bit
int
时)
var killdate = new Date(2099, 11, 31, 23, 59, 59);
现在,除非我错过了什么,否则没有11月31日,所以为什么我必须将日期设置为?
这只是将来使用的日期,距离现在足够远。在您的示例中,日期实际上是31-Dec-2099 23:59:59
(月计数从0到11)
只是为了知识作为你的好奇心:
JS Date对象是从Java 1.0移植过来的,这就是为什么。继承了它所有的缺点。
除了日期以外的所有内容都以0为基础,请参阅此处查看包含
相关文章:
- JSON数组数据返回Undefined
- AngularJS中的页面之间共享数据返回空
- post()向服务器动态生成的数据返回空响应
- 如何从jQuery对象文本正确调用服务器端ASP.NET并将数据返回给jQuery
- d3从mysql数据库导入数据返回“0”;未定义”;
- JSON可以't访问数据返回未定义
- 让 ajax 数据返回到调用函数 - 需要澄清之前的答案
- ajax 调用 PHP 数据返回 VM92:1 未捕获语法错误:意外的标记 {.
- Jquery ajax 请求无法将数据返回给其他函数
- 在 jquery 中将数据返回给 ajax 调用
- Meteor.methods:从内部回调将数据返回给客户端
- 将PHP数据返回到我当前的网页,供Javascript访问
- ajax 调用如何将数据返回给变量
- 将数据返回到索引.js节点表达式
- j查询帖子数据返回比较不起作用
- 节点 API 未将数据返回给客户端 ajax 请求
- jQuery 函数在 AJAX 数据返回上不起作用
- AJAX 将数据返回给 jquery
- 中继:获取递归数据返回空值
- 根据chrome.storage中的数据返回chrome.webRequest.onBeforeRequest的值