这条cookie没有过期吗?
如果你是这样想的,你就进入了误区:
- expires设置的是过期时间,如果这个过期时间是在过去,说明这个cookie已经不会再发送到服务器,随后浏览器会把cookie删除的。
- 为什么是1969-12-31T23:59:59.000Z,这是一个UTC标准时间,unix时间戳是从1970-01-01T00:00:00Z开始的,这个也是我们计算时间戳的起始时间。console.log(new Date('1969-12-31T23:59:59.000Z').getTime());这个值是 -1000,-1秒,是习惯表达,用来表示过去时间的意思吧。
真实情况是这样的:
- cookie是没有过期的。
- 只是它的保存时间是一个会话周期(session), 临时性Cookie,不会被持久化,也就是当你关闭你的浏览器后,这个cookie就会消失。
- 为什么题主看到的时间是1969-xxxx-xxxx,这个是chrome特意用来表示会话周期的。
在火狐浏览器的显示是这样的
注:临时会话再浏览器关闭时删除。