永发信息网

各位大哥帮我解释一下这段JavaScript代码,谢谢

答案:3  悬赏:50  手机版
解决时间 2021-08-12 13:00
  • 提问者网友:遮云壑
  • 2021-08-11 20:21

<html>
<head>
<script type="text/javascript">
function getCookie(c_name)
{
if (document.cookie.length>0)
{
c_start=document.cookie.indexOf(c_name + "=")
if (c_start!=-1)
{
c_start=c_start + c_name.length+1
c_end=document.cookie.indexOf(";",c_start)
if (c_end==-1) c_end=document.cookie.length
return unescape(document.cookie.substring(c_start,c_end))
}
}
return ""
}

function setCookie(c_name,value,expiredays)
{
var exdate=new Date()
exdate.setDate(exdate.getDate()+expiredays)
document.cookie=c_name+ "=" +escape(value)+
((expiredays==null) ? "" : ";expires="+exdate.toGMTString())
}

function checkCookie()
{
username=getCookie('username')
if (username!=null && username!="")
{alert('Welcome again '+username+'!')}
else
{
username=prompt('Please enter your name:',"")
if (username!=null && username!="")
{
setCookie('username',username,365)
}
}
}
</script>
</head>

<body onLoad="checkCookie()">
</body>
</html>

小弟我初学,还请各位大哥指教

最佳答案
  • 五星知识达人网友:低血压的长颈鹿
  • 2021-08-11 20:27

这些代码是对cookies的操作


function getCookie(c_name) 里是读取你用户的cookis如果他访问过你的网站就会有记录用这个方法把它读出来


function setCookie(c_name,value,expiredays)方法里是 写入cookie


function checkCookie()这个方法是判断是否有cookie存在如果存在就显示欢迎


不存在就调用上面的function setCookie(c_name,value,expiredays)方法 写入一个COOKIE 并要求你输入一个用户名


大致就是这样的


全部回答
  • 1楼网友:拾荒鲤
  • 2021-08-11 22:04

这是用js操作cookie的

  • 2楼网友:深街酒徒
  • 2021-08-11 21:09
<script type="text/javascript"> function getCookie(c_name) { if (document.cookie.length>0) //如果cookie的值长度为零则执行下面的代码 { c_start=document.cookie.indexOf(c_name + "=") //判断cookie的名字是否是指定的名字 if (c_start!=-1) //如果不等于-1则表示名字为c_name的cookie是存在的 { c_start=c_start + c_name.length+1 //获取指定cookie名字的值的起始位置 c_end=document.cookie.indexOf(";",c_start) //获取指定cookie名字的值的结束位置,从开始位置开始取;号的位置,因为分号是分隔符 if (c_end==-1) c_end=document.cookie.length //如果结束位置为-1则表示这个cookie是最后一个没有;所以取最长值 return unescape(document.cookie.substring(c_start,c_end)) //返回解码后的cookie值 } } return "" //否则返回空值 } function setCookie(c_name,value,expiredays) //设置cookie,指定cookie的名字(c_name),有效期(expiredays) { var exdate=new Date()//设置有效期的初始值当前日期 exdate.setDate(exdate.getDate()+expiredays) //设置过期的日期当前日期+有效时间长度 document.cookie=c_name+ "=" +escape(value)+ //设置cookie的名称以及有效时间 ((expiredays==null) ? "" : ";expires="+exdate.toGMTString()) } function checkCookie() //检查cookie是否存在,如果存在就提示cookie的值 { username=getCookie('username') //获取cookie的值 if (username!=null && username!="") //如果username值不为空并且username不为null提示 {alert('Welcome again '+username+'!')} else { username=prompt('Please enter your name:',"") //否则提示重新输入用户名 if (username!=null && username!="") //如果用户名不为空则不为null { setCookie('username',username,365) //设置cookie值 } } } </script>
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯