JavaScript检查Cookie在写入后似乎需要睡眠

JavaScript检查Cookie在写入后似乎需要睡眠,javascript,setcookie,Javascript,Setcookie,我有个奇怪的问题。如果可以编写Cookie,请执行一些JavaScript检查。 这是我们的代码: function logCookieError(){ var noCokkieSet = false; createCookie('testcookie','testvalue',1); if(getCookie('testcookie') != 'testvalue'){ noCokkieSet = true; _log.error("XMPP=NO COOKIES:

我有个奇怪的问题。如果可以编写Cookie,请执行一些JavaScript检查。
这是我们的代码:

function logCookieError(){
  var noCokkieSet = false;
  createCookie('testcookie','testvalue',1);
  if(getCookie('testcookie') != 'testvalue'){
    noCokkieSet = true;
    _log.error("XMPP=NO COOKIES:");
  }else{
    eraseCookie('testcookie');
  }
  return noCokkieSet;
}
不幸的是,有时(使用Chrome进行测试),我们会收到一个错误消息,尽管没有任何变化。
那么,编写Cookie是否需要一些时间,我是否需要添加睡眠,或者其他因素是否会影响此测试

问候,
-雷纳

编辑
我认为createCookie和getCookie是标准的JavaScript方法。以下是实现:

function createCookie(name,value,days){
  if (days){
    var date = new Date();
    date.setTime(date.getTime()+(days*24*60*60*1000));
    var expires = "; expires="+date.toGMTString();
  }else{
    expires = "";
  }
  document.cookie = name+"="+value+expires+"; path=/";
}

function getCookie(NameOfCookie){
  if (document.cookie.length > 0){
    begin = document.cookie.indexOf(NameOfCookie+"=");
        >-if (begin != -1){
      begin += NameOfCookie.length+1;
      end = document.cookie.indexOf(";", begin);
      if (end == -1) end = document.cookie.length;
      return unescape(document.cookie.substring(begin, end));
    }
  }
  return null;
}

检查createCookie函数。 可能您正试图创建一个自动终止的超时cookie。 一个很好的例子是:

您需要添加
createCookie
getCookie
eraseCookie
所做的事情,或者添加对您正在使用的库的引用。编写cookie是一项同步且极快的操作。我怀疑
getCookie
createCookie
eraseCookie
方法不能正常工作。