我正在尝试学习所有关于cookie的知识。通过探索document.cookie
和相关方法,我了解到获取cookie并不是那么简单。是的,获取和设置cookie的功能是直截了当的,但是为什么cookie字符串似乎可以更好地用作对象?
例如,获取cookie需要:
function getCookie(cname) {
var name = cname + "=";
var ca = document.cookie.split(';');
for(var i=0; i<ca.length; i++) {
var c = ca[i];
while (c.charAt(0)==' ') c = c.substring(1);
if (c.indexOf(name) != -1) return c.substring(name.length,c.length);
}
return "";
}
但如果cookie是一个对象,我们不能只使用类似的东西:
document.cookie(cookiename)?
我知道因此对于那些遵循js标签的人来说必须听起来太基本了。但我只是想了解使用字符串作为cookie的选择,因为它们看起来如此广泛使用它们当然值得拥有自己的内置js方法来查看,获取和设置?
答案 0 :(得分:1)
我做了一些研究,我想猜一下。
创建Cookie是一种让网站记住某些特定事物(如用户偏好)的方法。具体来说,他们是在94年netscape的某个人正在开发电子商务应用程序时创建的。他将一种名为“魔术饼干”的方法应用于网络中常用编程中常用的方法(http://en.m.wikipedia.org/wiki/Magic_cookie)。
从那时起,一直需要存储一些用户事务的简单url参数。您知道的技术是存储包含要记住的参数的特定简单文本文件。当Internet Explorer将其集成到v2浏览器中时,它似乎会分散开来。
我想组合: 1.需要简单地存储关于交易的一些关键信息。 2.它们本身是安全的,因此它们不能包含任何类型的函数或代码 可能有助于cookie的不进化。
我建议您阅读维基百科上关于cookie历史的很多内容。我只是阅读它们,发现它们非常有趣和有趣。
我建议的最后一件事是尽可能快地了解cookies并开始阅读/学习Localstorage(http://en.m.wikipedia.org/wiki/Web_storage)。
优点是您可以使用json对象来管理存储的数据。 缺点是没有与您的服务器共享数据的版本(无论如何,特殊类型的cookie都可以完成工作)。
我希望自己有用!