这个代码在Facebook的JS中有什么意义,也许是历史意义?

时间:2014-05-22 06:32:03

标签: javascript

我在Facebook的核心JavaScript中找到了all.js中的这段代码。看起来这个cookie的截止日期是2004年2月4日,显然是Facebook诞生的那一天。有人好奇地告诉我这段代码是否真的有价值,或者只是存在于历史意义上。

 function j(m, n, o) {
                m = m + h.getClientID();
                var p = i && i !== '.';
                if (p) {
                    document.cookie = m + '=; expires=Wed, 04 Feb 2004 08:00:00 GMT;';
                    document.cookie = m + '=; expires=Wed, 04 Feb 2004 08:00:00 GMT;' + 'domain=' + location.hostname + ';';
                }
                var q = new Date(o).toGMTString();
                document.cookie = m + '=' + n + (n && o === 0 ? '' : '; expires=' + q) + '; path=/' + (p ? '; domain=' + i : '');
            }

根据我的理解,设定过去10年的失效日期对我来说并不合理。我可能错了,但我仍然有兴趣知道。我认为这只是Zuck留下的一个片段?

document.cookie="username=John Doe; expires=Thu, 18 Dec 2013 12:00:00 GMT";

http://connect.facebook.net/en_US/all.js

使用JsBeautifier使其可读:http://jsbeautifier.org/

1 个答案:

答案 0 :(得分:3)

这只是一种删除旧cookie的方法。由于过去的任何日期都可以,Wed, 04 Feb 2004 08:00:00 GMT与任何日期一样好。但由于Facebook在此日期之前不存在,因此它是每个Facebook用户会话保证过去的最近日期,因此选择此日期超出历史意义有一种逻辑。