我有一个功能:
function check(cv) {
return !!document.cookie.split(/;\s*/).filter(function (c) {
return cv === c.split(/=/)[1]
}).length;
}
应该返回true
或false
,具体取决于Cookie是否存在。
我有一个示例代码 - https://jsfiddle.net/HillelNagid/bu4qboum/,它会创建一个Cookie mopened
并在Cookie不存在时显示模式对话框,如果存在,则不显示模态对话框。
问题是即使cookie存在,check()
函数也会返回false
。我想知道为什么会这样?
可能是因为cookie的路径?
答案 0 :(得分:0)
您正在分割后获取数组的第二个索引...将其更改为第一个索引。 更改代码如下。
function check(cv) {
return !!document.cookie.split(/;\s*/).filter(function(c){
return cv === c.split(/=/)[0]}).length;
}
因为键将在=
的拆分的第一部分中