获取cookie函数总是返回false

时间:2017-12-28 18:55:47

标签: javascript cookies

我有一个功能:

function check(cv) {
  return !!document.cookie.split(/;\s*/).filter(function (c) {
    return cv === c.split(/=/)[1]
  }).length;
}

应该返回truefalse,具体取决于Cookie是否存在。

我有一个示例代码 - https://jsfiddle.net/HillelNagid/bu4qboum/,它会创建一个Cookie mopened并在Cookie不存在时显示模式对话框,如果存在,则不显示模态对话框。

问题是即使cookie存在,check()函数也会返回false。我想知道为什么会这样? 可能是因为cookie的路径?

1 个答案:

答案 0 :(得分:0)

您正在分割后获取数组的第二个索引...将其更改为第一个索引。 更改代码如下。

function check(cv) { 
    return !!document.cookie.split(/;\s*/).filter(function(c){
                return cv === c.split(/=/)[0]}).length; 
             }

因为键将在=

的拆分的第一部分中