Cookie的增、刪、改、查

operateCookie.js

// 設置Cookie
export const setCookie = function (obj) {
  let { name, value, expires = 30, path, domain, secure } = obj

  let exp = new Date()
  exp.setTime(exp.getTime() + expires * 24*60*60*1000)
  
  document.cookie = name + "=" + escape(value) 
  + (expires ? ";expires=" + exp.toGMTString() : "")
  + (path ? ";path=" + path : "")
  + (domain ? ";domain=" + domain : "")
  + (secure ? ";secure" : "")
}

// 獲取Cookie
export const getCookie = function (name) {
  let cookies = document.cookie
  let list = cookies.split("; ")

  for (let i = 0; i < list.length; i++) {
    let arr = list[i].split("=")
    if(arr[0] == name) return decodeURIComponent(arr[1]) 
  }
  return ""
}

// 刪除Cookie(原理:將expires設置爲過去的時間可刪除Cookie)
export const delCookie = function (name) {
  setCookie({
    name: name,
    value: '',
    expires: -1
  })
}
複製代碼

使用

import { setCookie, getCookie, delCookie } from '@/utils/operateCookie'

export default {
  mounted () {  
    setCookie({
      name: '姓名',
      value: 'James'
    })
    getCookie('姓名')
    delCookie('姓名')
  }
}
複製代碼
相關文章
相關標籤/搜索