JS获取cookie方法汇总

JS提供了方便的设置cookie的办法,但是不像PHP那般用一个$_COOKIE函数就可以直接获取,JS需要对cookie的键值对进行操作,以下是汇总的四中读取cookie的方法

//方法一

var acookie = document.cookie.split(``"; "``);

function getcookie(sname){

``for (``var i = 0; i < acookie.length; i++) {

``var arr = acookie[i].split(``"="``);

``if (sname == arr[0]) {

``if (arr.length > 1)

``return unescape(arr[1]);

``else

``return ""``;

``}

``}

``return ""``;

}

//方法二

function getcookie(objname){

``var arrstr = document.cookie.split(``"; "``);

``for (``var i = 0; i < arrstr.length; i++){

``var temp = arrstr[i].split(``"="``);

``if (temp[0] == objname) ``return unescape(temp[1]);

``}

}

//方法三

有坑:WMSEMPID=01011540; EMPID=00012152;

cookiename是EMPID取的是第一个cookie。

function getcookie(cookiename){

``var cookiestring = document.cookie;

``var start = cookiestring.indexof(cookiename + ``'= '``);

``if (start == -1)

``return null``;

``start += cookiename.length + 1;

``var end = cookiestring.indexof(``"; "``, start);

``if (end == -1) ``return unescape(cookiestring.substring(start));

``return unescape(cookiestring.substring(start, end));

}

//方法四

function readcookie(name){

``var cookievalue = ``""``;

``var search = name + ``"="``;

``if (document.cookie.length > 0){

``offset = document.cookie.indexof(search);

``if (offset != -1){

``offset += search.length;

``end = document.cookie.indexof(``";"``, offset);

``if (end == -1) end = document.cookie.length;

``cookievalue = unescape(document.cookie.substring(offset, end))

``}

``}

``return cookievalue;

}

相关推荐
学不会•1 小时前
css数据不固定情况下,循环加不同背景颜色
前端·javascript·html
EasyNTS2 小时前
H.264/H.265播放器EasyPlayer.js视频流媒体播放器关于websocket1006的异常断连
javascript·h.265·h.264
Theodore_10222 小时前
4 设计模式原则之接口隔离原则
java·开发语言·设计模式·java-ee·接口隔离原则·javaee
活宝小娜3 小时前
vue不刷新浏览器更新页面的方法
前端·javascript·vue.js
程序视点3 小时前
【Vue3新工具】Pinia.js:提升开发效率,更轻量、更高效的状态管理方案!
前端·javascript·vue.js·typescript·vue·ecmascript
coldriversnow3 小时前
在Vue中,vue document.onkeydown 无效
前端·javascript·vue.js
我开心就好o3 小时前
uniapp点左上角返回键, 重复来回跳转的问题 解决方案
前端·javascript·uni-app
----云烟----4 小时前
QT中QString类的各种使用
开发语言·qt
lsx2024064 小时前
SQL SELECT 语句:基础与进阶应用
开发语言
开心工作室_kaic4 小时前
ssm161基于web的资源共享平台的共享与开发+jsp(论文+源码)_kaic
java·开发语言·前端