如果我通过进入控制台并输入 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/