zoukankan      html  css  js  c++  java
  • react 封装自己的Cookie库

    const cookie = {
    //根据key值获取对应的cookie getCookie(key: any) {
    //获取cookie const data = document.cookie
    //获取key第一次出现的位置 let startIndex = data.indexOf(key + '=')
    //如果开始索引值大于0表示有cookie if (startIndex > -1) {
    //key的起始位置等于出现的位置加key的长度+1 startIndex = startIndex + key.length + 1
    //结束位置等于从key开始的位置之后第一次;号所出现的位置 let endIndex = data.indexOf(';', startIndex)
    //如果未找到结尾位置则结尾位置等于cookie长度,之后的内容全部获取 endIndex = endIndex < 0 ? data.length : endIndex return decodeURIComponent(data.substring(startIndex, endIndex)) } else { return '' } }, setCookie(key: any, value: any, time?: any) { //默认保存时间 const times = time //获取当前时间 const cur = new Date() /设置指定时间 cur.setTime(cur.getTime() + times * 24 * 3600 * 1000) //创建cookie 并且设置生存周期为UTC时间 document.cookie = key+'=' +encodeURIComponent(value) +';expires=' +(times === undefined ? '' : cur.toUTCString()) }, delCookie(key: any) {
    //获取cookie const data = this.getCookie(key)
    //如果获取到cookie则重新设置cookie的生存周期为过去时间 if ((data as any) !== false) { this.setCookie(key, data, -1) } } } export default cookie
  • 相关阅读:
    帧同步资料收集
    随机数种子问题
    【转】 DOTA2中的伪随机及其lua实现
    C++ 异常机制分析
    细说new与malloc的10点区别
    static关键字总结
    C++11 并发编程基础(一):并发、并行与C++多线程
    论一个程序员的自我修养
    gSoap的多线程程序
    面试常见问题:
  • 原文地址:https://www.cnblogs.com/-Fly/p/10515564.html
Copyright © 2011-2022 走看看