首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >jQuery检查Cookie是否存在,如果不存在,则创建它

问jQuery检查Cookie是否存在,如果不存在,则创建它
EN

Stack Overflow用户
提问于 2011-06-16 02:44:19
回答 5查看 163.9K关注 0票数 40

我不能让这段代码工作,我一定是遗漏了一些非常简单的东西。我正在尝试检查Cookie是否存在,如果它不{创建它},则它{什么都不做}。我正在通过在页面上包含一个警告来测试cookie。基本上,我不希望cookie不断重新创建一个引用的网址,我试图抓住只有第一个引用的网址。

代码语言:javascript
复制
$(document).ready(function(){   
  if ($.cookie('bas_referral') == null ){
   var ref = document.referrer.toLowerCase();  
   // set cookie  
   var cookURL =  $.cookie('bas_referral', ref, { expires: 1 }); 
  } 
 });  

显示当前cookie内容:

代码语言:javascript
复制
    // get cookie  
    alert($.cookie('bas_referral'));  

    // delete cookie  
     $.cookie('bas_referral', null);
EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2014-04-28 23:11:35

我认为最好的方法是:

代码语言:javascript
复制
if (typeof $.cookie('token') === 'undefined'){
 //no cookie
} else {
 //have cookie
}

检查null、null或undefined变量的类型总是返回'undefined‘

编辑:您可以更轻松地到达那里:

代码语言:javascript
复制
if (!!$.cookie('token')) {
 // have cookie
} else {
 // no cookie
}

!!会将 values转换为false。请记住,这会将0转换为false!

票数 81
EN

Stack Overflow用户

发布于 2011-12-17 00:24:38

代码语言:javascript
复制
 $(document).ready(function() {

     var CookieSet = $.cookie('cookietitle', 'yourvalue');

     if (CookieSet == null) {
          // Do Nothing
     }
     if (jQuery.cookie('cookietitle')) {
          // Reactions
     }
 });
票数 26
EN

Stack Overflow用户

发布于 2013-12-11 06:13:12

我在这方面遇到了很多麻烦,因为我在使用:

代码语言:javascript
复制
if($.cookie('token') === null || $.cookie('token') === "")
{
      //no cookie
}
else
{
     //have cookie
}

无论我在设置cookie时做了什么,上面的代码总是返回false。从我的测试看,对象在设置之前似乎是未定义的,所以在我的代码中添加以下代码就可以解决这个问题。

代码语言:javascript
复制
if($.cookie('token') === null || $.cookie('token') === "" 
    || $.(cookie('token') === "null" || $.cookie('token') === undefined)
{
      //no cookie
}
else
{
     //have cookie
}
票数 9
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6362688

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档