javascript - document.cookie 究竟是如何工作的?

标签 javascript debugging google-chrome javascript-debugger

如果我通过进入控制台并输入 document.cookie; 让 Chrome 向我显示 document.cookie,它会给我,说:

"name=John; gender=male";

但是如果我输入,比方说,document.cookie = 5; 它所做的只是将 5; 添加到字符串的开头,所以我得到:

"5; name=John; gender=male";

如果我尝试 document.cookie = null; 那么它什么也做不了。

这怎么可能?这是一个变量,不是吗?那么为什么赋值运算符没有按其应有的方式工作呢?它实际上只是一点语法糖而不是真正的变量吗?如果是这样,糖究竟掩盖了什么?

最佳答案

document.cookie 具有非常的特殊行为。如您所见,为其分配添加(或更新)一个 cookie(或多个 cookie),而不是替换所有 cookie。这很不寻常。

MDN 上阅读所有相关信息.

关于javascript - document.cookie 究竟是如何工作的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6791944/

相关文章:

c# - 如何在 .NET 程序集中找到相应的 .pdb?

c++ - Visual Studio Code - C++ 调试器无法启动

javascript - Chrome RGBA 问题

google-chrome - Appium - 在不清除浏览器数据的情况下运行浏览器测试

javascript - jquery通过属性和类获取元素

javascript - NG-重复动画在 IE11 中不起作用

JavaScript:如何将 UTC 日期/时间转换为山区时间?

php - 引用 - 这个错误在 PHP 中意味着什么?

javascript - 检查对象数组中的值是否适合某个范围?

javascript - Hook document.write 函数