本文介绍如何在 JavaScript 中正确判断名为 username3 的 Cookie 是否存在。通过 document.cookie.indexOf("username3=") 返回值是否为 -1 来判定,而非简单的字符串比较。结合 jQuery 实现登录表单与用户信息的显隐切换,确保登录状态判断准确无误。
Cookie 存在性检测的正确逻辑
在实际开发中,我们经常需要利用 Cookie 保存用户名以记录用户的登录状态。那么,如何准确地判断当前设备的 Cookie 中是否存在该信息呢?简单地使用变量不等于空字符串(a!="")这种写法是不严谨的,可能导致误判。
具体实现代码如下:
代码实现与状态切换a=getCookie("username3");
c_start=document.cookie.indexOf("username3=");
if(c_start == -1){
$("#login_form").show();
$("#logined").hide();
}
}else{
$("#login_form").hide();
$("#logined").show();
$("#ustr").html(a);
} 正确的做法是:通过判断是否存在名为 username3 的 Cookie 来确定状态。具体操作是使用 document.cookie.indexOf("username3=") 方法,如果该方法的返回值是 -1,则明确表示该 Cookie 不存在。