我有一个功能:
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不存在,如果确实如此,则不显示模态对话框。
问题是check()
函数返回false
,即使cookie存在。我想知道为什么会这样?
可能是因为cookie的路径?
你在拆分后获取第二个数组索引...将其更改为第一个索引。更改代码如下。
function check(cv) {
return !!document.cookie.split(/;\s*/).filter(function(c){
return cv === c.split(/=/)[0]}).length;
}
因为关键将是从=开始的第一部分