JavaScript获取cookie的方法

之前都是使用 php 对 cookie 进行操作,今天有个需求,需要用 js 获取网站的 cookie 。下面开始:

获取 cookie 存为数组:

let cookieArr = document.cookie.split(";")

遍历数组,存为对象:

let cookieObj = {};
for (let i = 0; i < cookieArr.length; i++) {
  if (cookieArr[i]) {
    cookieSplit = cookieArr[i].split("=");
    cookieObj[cookieSplit[0]] = cookieSplit[1];
  }
}

不过这里需要注意一下,这样直接使用是不行的,会报错 undefined

因为便利出来的 namevalue 是带有空格的。

所以需要再处理一下,可以封装成一个方法:

function getCookieObj () {//根据name获取cookie的值
  let cookieObj = {},
  cookieSplit = [],// 以分号(;)分组
  cookieArr = document.cookie.split(";"),;
  for (var i = 0; i < cookieArr.length; i++) {
    if (cookieArr[i]) {
      cookieSplit = cookieArr[i].split("=");//以等号(=)分组
      cookieObj[cookieSplit[0].replace(/^/s*|/s*$/g, "")] = cookieSplit[1].replace(/^/s*|/s*$/g, "");//删除字符串两边的空格
    }
  }
  return cookieObj;
}

使用时直接调用即可:

var c = getCookieObj(),
t = c.token;

未经允许不得转载:w3h5 » JavaScript获取cookie的方法

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/150482.html

(0)
上一篇 2021年9月13日
下一篇 2021年9月13日

相关推荐

发表回复

登录后才能评论