cookie 是浏览器提供给程序的一小段存储空间, 让网站可以保持一些状态. 例如, 当前是否是登陆的状态. cookie 设置的原理是通过 HTTP 协议 完成的, WEB 程序都是建立在 HTTP 协议的基础之上, 所有无论前端如 JavaScipr、后端如 PHP、Python ... 都拥有操作 cookie 的能力. 在 JS 中操作 cookie, 有对应封装好的方法, 不需要采用原生的 HTTP 请求.
// cookie 的数据格式是 key -> value 组合
document.cookie = 'name= Sophie'
// 设置 cookie 过期的时间 | 通过 “expires” 字段 | 默认的过期时间是浏览器被关闭
document.cookie = 'name= Sophie;expires=' + new Date(
new Date().getTime() + (7 * 24 * 60 * 60 * 1000) // 7 天后过期
)
// 设置 cookie 作用在哪个目录下
document.cookie = 'name=Sophie;path=/' // 根目录代表整个网站下都能读取
document.cookie = 'name=Sophie;path=/less' // 只在 /less 目录下才能读取
// 设置 cookie 作用在哪个域名下
document.cookie = 'name= Sophie;;domain=a.a.com' // b.a.com ...
document.cookie // 读取当前页面所有的 cookie 信息, 返回的是一组 “字符串”, 其中包含多个 cookie, 每个 cookie 以 “;” 分割
// 如果要读取指定的 cookie, 例如 “name” 的值, 那么可以通过正则表达式
document.cookie.match(/name=(.*?);/)[1] // ‘Sophie’
更具体的 cookie 信息 例如 过期时间 作用域 等.. 在浏览器相关的菜单栏目里.
JavaScript 数据类型
JavaScript 数字
JavaScript 字符串
JavaScript 数组
JavaScript 对象
JavaScript Map
JavaScript Set
JavaScript null
JavaScript undefined
JavaScript 类型检测
JavaScript 包装对象
JavaScript 函数
JavaScript 参数
JavaScript 匿名函数
JavaScript 箭头函数
JavaScript 递归
JavaScript 闭包
JavaScript 生成器
JavaScript 异步
JavaScript setTimeout
JavaScript setInterval
JavaScript 回调
JavaScript Promise
JavaScript async await