美文网首页菜鸟前端工程师
JavaScript学习笔记030-前端缓存cookie0初识后

JavaScript学习笔记030-前端缓存cookie0初识后

作者: Mr柳上原 | 来源:发表于2018-11-14 09:45 被阅读1次

Author:Mr.柳上原

  • 付出不亚于任何的努力
  • 愿我们所有的努力,都不会被生活辜负
  • 不忘初心,方得始终

这篇笔记要不要上传

我纠结了一下

基本上

现在

在企业开发中

几乎很少使用到cookie了

现在基本上都是H5本地缓存

token之类的做用户登录验证

node或许会用到一点点

想想还是发上来吧

没准哪天就有用了

<!DOCTYPE html> <!-- 文档类型:标准html文档 -->

<html lang='en'> <!-- html根标签 翻译文字:英文 -->

<head> <!-- 网页头部 -->

<meat charset='UTF-8'/> <!-- 网页字符编码 -->

<meat name='Keywords' content='关键词1,关键词2'/>

<meat name='Description' content='网站说明'/>

<meat name='Author' content='作者'/>

<title>前端59期学员作业</title> <!-- 网页标题 -->

<link rel='stylesheet' type='text/css' href='css/css1.css'/> <!-- 外链样式表 -->

<style type='text/css'> /*内部样式表*/

</style>

</head>

<body> <!-- 网页主干:可视化区域 -->

<script>
/*
cookie:
数据缓存,保存用户的操作状态
http无状态,不会保留用户状态
cookie必须在服务器环境下使用
cookie的默认有效期是即时的,浏览器关闭后就消失了

Request Headers 请求头
cookie
当前域的cookie会被主动发到服务器
后台接受到cookie,发送用户当前对应状态的页面
*/
// 获取当前页面的cookie数据
console.log(document.cookie);

// 设置当前页面的cookie数据
document.cookie = "username=fengyu";
document.cookie = "password=123456";
// 注意:=不是赋值,而是设置一条新的cookie值,与上一条同时存在,但是当右边字符串内的值左边值名相同时,会覆盖上一条

// 设置当前页面的cookie有效期
document.cookie = "username=fengyu; expires=" + new Date(Date.now() + 60 * 1000).toUTCString(); // 设置一分钟后过期
// 注意:设置当前时间的时间戳

// 获取cookie的值
const getCookie = attr => {
const arr = document.cookie.match(new RegExp("\\b" + attr + "=([^;]+)(;|$)"));
return arr ? arr[1] : "";
}
getCookie("username");
console.log(getCookie("username"));

// 设置cookie的值
const setCookie = (obj1, time = 0) => {
const timer = new Date(Date.now() + time * 1000*60*60*24).toUTCString();
for(var key in obj1){
document.cookie = `${key}=${obj1[key]}; expires=${timer}`;
}
}
setCookie({
username: "fengyu",
password: 123456
}, 2)

// 删除cookie的值
const delCookie = arrt => {
let obj2 = {};
obj2[arrt] = "";
setCookie(obj2, -1)
}

// cookie实例:用户登录,保存cookie
// 上次访问时间
const lastTime = getCookie("lastTime");
if (lastTime){
// 为true表示用户不是第一次登录
last.innerHTML = "您上次访问时间是:" + lastTime;
} else {
// 为false表示用户第一次登录
last.innerHTML = "欢迎大爷第一次来玩耍"
}
const time = new Date().toLocaleString();
now.innerHTML = "本次登录时间:" + time;
setCookie({
lastTime: time
}, 365)

/*
session:
后端用来存储缓存信息的方法
前端cookie值发送给后端
后端用session接收,并返回对应数据
*/

</script>

</body>

</html>

相关文章

  • JavaScript学习笔记030-前端缓存cookie0初识后

    Author:Mr.柳上原 付出不亚于任何的努力 愿我们所有的努力,都不会被生活辜负 不忘初心,方得始终 这篇笔记...

  • web前端入门基础

    web前端基础笔记 学习web前端开发基础技术需要掌握:HTML、CSS、JavaScript语言。下面我们就来了...

  • 2018-01-04

    Web学习笔记--从最基础的开始 一、web前端开发语言: HTML、 CSS 、JavaScript HTML:...

  • ECMAScript

    拉勾大前端的学习笔记,仅作为学习记录 概述 ECMAScript是JavaScript的语言规范,ES只是提供了最...

  • iOS 中的高阶函数

    [https://github.com/Janyau/HOFA] 前言 学习了前端 JavaScript 后,对其...

  • 《重学前端》笔记: 101 JavaScript: 类型和对象

    《重学前端》笔记: 模块一: JavaScript: 类型和对象 JavaScript类型:关于类型,有哪些你不知...

  • html&CSS(一)

    本文主要是起笔记的作用,内容来自慕课网. 认识HTML、CSS、JavaScript 学习web前端开发基础技术需...

  • WEB前端学习javascript学习笔记

    Web前端开发工程师是一个很新的职业,是从事Web前端开发工作的工程师。主要进行网站开发,优化,完善的工作。网页制...

  • RN的大体认识

    初识React Native 我们都知道React是一套开源JavaScript 库(也可以称为前端 UI 框架)...

  • TypeScript语言

    拉勾大前端的学习笔记,仅作为学习记录是基于JavaScript之上的编程语言,重点解决了js类型系统里面的不足,大...

网友评论

    本文标题:JavaScript学习笔记030-前端缓存cookie0初识后

    本文链接:https://www.haomeiwen.com/subject/vcddfqtx.html