当前位置: 首页 > news >正文

前端vue入门(纯代码)08

08.webStorage--本地存储

(1). 什么是 localStorage 和 sessionStorage ?
  • 它们都是浏览器的一种本地存储数据的方式
  • 它们只是存在本地,即浏览器中,不会发送到服务器

它们的区别:

  • localStorage:永久存在浏览器中【不管是否关闭浏览器】,除非手动删除
  • sessionStorage:当浏览器被关闭时,自动消失,存储的数据被清空

localStorage

1.特点:

  1. 存储内容大小一般支持5MB左右(不同浏览器可能还不一样)。
  2. LocalStorage存储的内容,需要手动清除才会消失。
  3. 【需要手动清空缓存,不然就算关闭了浏览器,LocalStorage中存储的数据还在】

2.localStorage的4个API方法:

  1. localStorage.setItem('key','value')

    • 该方法接受一个键和值作为参数,会把键值对添加到存储中,如果键名存在,则更新其对应的值。
    <script>// 保存数据方法function saveData (){// 本地存储中,数据是以键值对【key--value】的形式存储的localStorage.setItem('伍六七', '理发师')localStorage.setItem("梅小姐", "刺客")localStorage.setItem('江主任', '小鸡岛妇联主席')// JSON.stringify(p):将p这个对象转换成json字符串的形式localStorage.setItem('天龙帮', JSON.stringify(p))}
    </script>
    
  2. localStorage.getItem('key')

    • 该方法接受一个键名作为参数,返回键名对应的值。

    • JSON.parse():把字符串解析成对象。

    <script>// 读取数据方法function readData() {console.log(localStorage.getItem('江主任'))const readdata1 =localStorage.getItem('天龙帮')//读取到的是一个对象console.log(JSON.parse(readdata1))//读取到的是字符串console.log(localStorage.getItem('天龙帮'))}
    </script>
    
  3. localStorage.removeItem('key')

    • 该方法接受一个键名作为参数,并把该键名从存储中删除。
    <script>// 删除数据的方法function deleteData() {localStorage.removeItem('伍六七')}
    </script>
    
  4. localStorage.clear()

    • 该方法会清空存储中的所有数据。
    <script>// 清楚所有数据function clearAllData(){localStorage.clear()}
    </script>
    

sessionStorage

1.特点:

  1. 存储内容大小一般支持5MB左右(不同浏览器可能还不一样)。
  2. SessionStorage存储的内容会随着**浏览器窗口关闭而消失**。
  3. 【会话结束–关闭浏览器,数据就消失】:就是说,再次打开浏览器时,SessionStorage存储的内容会被清空

2.sessionStorage的4个API方法:

  1. sessionStorage.setItem('key','value')

    <script>// 保存数据方法function saveData (){// 本地存储中,数据是以键值对【key--value】的形式存储的sessionStorage.setItem('伍六七', '理发师')sessionStorage.setItem("梅小姐", "刺客")sessionStorage.setItem('江主任', '小鸡岛妇联主席')// JSON.stringify(p):将p这个对象转换成json字符串的形式sessionStorage.setItem('天龙帮', JSON.stringify(p))}
    </script>
    
  2. sessionStorage.getItem('key')

    <script>// 读取数据方法function readData() {console.log(sessionStorage.getItem('江主任'))const readdata1 =sessionStorage.getItem('天龙帮')//读取到的是一个对象console.log(JSON.parse(readdata1))//读取到的是字符串console.log(sessionStorage.getItem('天龙帮'))}
    </script>
    
  3. sessionStorage.removeItem('key')

    <script>// 删除数据的方法function deleteData() {sessionStorage.removeItem('伍六七')}
    </script>
    
  4. sessionStorage.clear()

    <script>// 清楚所有数据function clearAllData(){sessionStorage.clear()}
    </script>
    
总结:
  1. SessionStorage存储的内容会随着浏览器窗口关闭而消失。
  2. LocalStorage存储的内容,需要手动清除才会消失。
  3. xxxxxStorage.getItem(xxx)如果xxx对应的value获取不到,那么getItem的返回值是null。
  4. JSON.parse(null)的结果依然是null。

09.TodoList本地存储

JavaScript 逻辑或【||】和 逻辑与【&&】

特点
  • ||(逻辑或):当两个操作数都为false时返回false,否则返回true。如果第一个操作数为true,则不会执行第二个操作数。
  • &&(逻辑与):当两个操作数都为true时返回true,否则返回false。如果第一个操作数为false,则不会执行第二个操作数。

App.vue文件中的变化:【TodoList案例里只有App.vue里的data(){}监事属性watch:{}变了】

<script>export default {name:'App',components: { TodoHeader,TodoFooter,TodoList },data() {return {//由于todos是TodoHeader组件和TodoFooter组件都在使用,所以放在App中(状态提升)// todos:拿到的是一个字符串,需要解析成一个对象//【A||B】:第一个操作数A为true,则不会执行第二个操作B。第一个操作数A为false,则会执行第二个操作B。todos:JSON.parse(localStorage.getItem('todos')) || [],// todos为空时,解析出来的对象为null,即todos:null || [],// 举例:console.log(null || 3); //3}},// methods方法里的函数不变,保持一样methods: {  },// 监视属性todoswatch: {todos:{// 深度监视开启deep:true,//handler什么时候调用?当todos属性发生改变时// newValue:该属性变化之后的值handler(newValue){// newValue:传过来是一个数组对象,需要通过JSON.stringify()转化成一个字符串存储在本地localStorage.setItem('todos',JSON.stringify(newValue))}}}}
</script>

相关文章:

前端vue入门(纯代码)08

【08.webStorage--本地存储】 (1). 什么是 localStorage 和 sessionStorage &#xff1f; 它们都是浏览器的一种本地存储数据的方式它们只是存在本地&#xff0c;即浏览器中&#xff0c;不会发送到服务器 它们的区别&#xff1a; localStorage&#xff1a;永久存在浏览器中…...

Xubuntu22.04之便签工具(一百八十)

简介&#xff1a; CSDN博客专家&#xff0c;专注Android/Linux系统&#xff0c;分享多mic语音方案、音视频、编解码等技术&#xff0c;与大家一起成长&#xff01; 优质专栏&#xff1a;Audio工程师进阶系列【原创干货持续更新中……】&#x1f680; 人生格言&#xff1a; 人生…...

Unity入门4——重要组件与API

一、GameObject &#xff08;一&#xff09;成员变量 // 名字 print(this.gameObject.name); this.gameObject.name "Lesson4唐老狮改名"; print(this.gameOb…...

NFS服务器安装及NFS制备程序安装

NFS服务器安装及NFS制备程序安装 NFS服务器安装 NFS是一种分布式文件系统协议&#xff0c;由sun公司开发&#xff0c;旨在允许客户端主机可以像访问本地存储一样通过网络访问服务端文件 安装NFS服务器 登录需要安装NFS服务器的主机执行以下命令完成NFS安装 yum -y install…...

matlab+yalmip+cplex求解车辆路径优化问题(VRP)--matlab中yalmip函数介绍

YALMIP是一个MATLAB工具箱&#xff0c;用于建模和求解优化问题。它支持线性规划、二次规划、整数规划、鲁棒优化、半定规划等优化问题的建模和求解。下面是一些常用的函数的详细介绍&#xff1a; 1. sdpvar&#xff1a;用于定义优化问题中的变量。可以定义实数、向量和矩阵型变…...

实战:用dockerfile创建镜像实现springboot项目容器化

文章目录 前言技术积累docker基本操作命令dockerfile简介dockerfile指令说明 实战演示创建dockerfile创建挂载目录构建dockerfile启动容器完成验证 写在最后 前言 docker容器化方案是当下流行的服务部署方式&#xff0c;在软件领域举足轻重。我公司的测试、线上环境都采用dock…...

【Flask】配置项解析与加载

文章目录 默认配置表配置项加载方式直接配置存放在app.config字典通过.py配置文件通过class类加载对象通过.json配置文件通过环境变量配置内置命令行 默认配置表 配置项默认值备注DEBUGFalse是否开启 Debug 模式。如果为True&#xff0c;修改了代码&#xff0c;只需要保存&…...

Dinky: 实时即未来,让 Flink SQL 纵享丝滑--如何本地编译、运行

什么是Dinky 实时即未来,Dinky 为 Apache Flink 而生,让 Flink SQL 纵享丝滑。 Dinky 是一个开箱即用、易扩展,以 Apache Flink 为基础,连接 OLAP 和数据湖等众多框架的一站式实时计算平台,致力于流批一体和湖仓一体的探索与实践。 最后,Dinky 的发展皆归功于 Apache …...

2023 Nature 健康系统规模的语言模型是通用预测引擎

文章目录 一、论文关键信息二、论文主要内容三、总结与讨论🍉 CSDN 叶庭云:https://yetingyun.blog.csdn.net/ 一、论文关键信息 论文标题:Health system-scale language models are all-purpose prediction engines 期刊信息:2023 Nature 论文地址:h...

《2023 年 React 生态》

大家好&#xff0c;我是 Chocolate。 前不久看到一篇不错的内容&#xff0c;来自于 The React Ecosystem in 2023&#xff0c;也结合自己今年使用的 React 生态总结一下。 本文并非视频演讲稿&#xff0c;和视频内容还是有一点点区别&#xff0c;视频内容相对来说会更加详细一…...

武职302303笔记-day01

这里写自定义目录标题 开发永和小票开发步骤1、对页面进行需求分析 使用CSS的方式 Order.html问题&#xff1a;html代码和css样式代码交织 idea开发后端程序使用chatGPT给我们打工QRCreate.java 开发永和小票 开发步骤 1、对页面进行需求分析 页面是很多文字组成&#xff0c;…...

Python面试高频100题【11~15题】

Python面试必知100例。收集整理了目前Python岗位常见的面试题&#xff0c;希望大家通过学习理解相关知识点。下面介绍的是11~15道题。 十一、请介绍下Python中单下划线与双下划线区别 在Python中&#xff0c;单下划线和双下划线主要用于命名变量和方法&#xff0c;而它们具有不…...

Linux下Redis 存储

命令使用 目录 命令使用 RDB持久化 AOF持久化 yum安装 [rootlocalhost ~]# yum -y install redis 已加载插件&#xff1a;fastestmirror Loading mirror speeds from cached hostfile* c7-media: * epel: ftp.yz.yamagata-u.ac.jpvim到文件etc/redis.conf 取消注释requirep…...

QML 快速上手3 - QuickControl2

目录 QuickControl2简介风格设置control 配置文件图像浏览器案例component 组件报错问题StackViewSwipeView QuickControl2 简介 quickcontrol 用于快速构建风格化的用户界面 它包括了以下几个预制的组件风格 Default QT 默认风格Universal windows 桌面风格Material 谷歌推…...

QT Creator写一个简单的电压电流显示器

前言 本文主要涉及上位机对接收的串口数据处理&#xff0c;LCD Number控件的使用。之前的一篇写一个简单的LED控制主要是串口发出数据&#xff0c;这里再看一下怎么接收数据处理数据&#xff0c;这样基本就对串口上位机有简单的认识了。 LCD Number显示时间 这一小节通过用一…...

前端需要的技能

语言&#xff1a; 1&#xff0c;熟练掌握html5&#xff0c;css3&#xff0c;javascript&#xff0c;ajax 2&#xff0c;掌握PHP、java、python中至少一种web开发语言 3&#xff0c;库/框架:MooTools,YUI,Angular,jQuery,Dojo. 4&#xff0c;UI框架&#xff1a;BootStrap,Founda…...

Qt——Qt控件之基于模型的项目视图组-QTreeView树形视图控件的使用总结(Qt仿word标题列表的实现)

【系列专栏】:博主结合工作实践输出的,解决实际问题的专栏,朋友们看过来! 《项目案例分享》 《极客DIY开源分享》 《嵌入式通用开发实战》 《C++语言开发基础总结》 《从0到1学习嵌入式Linux开发》...

spring boot框架步骤

目录 1. 创建一个新的Spring Boot项目2. 添加所需的依赖3. 编写应用程序代码4. 配置应用程序5. 运行应用程序6. 编写和运行测试7. 部署应用程序 总结 当使用Spring Boot框架开发应用程序时&#xff0c;以下是一些详细的步骤&#xff1a; 1. 创建一个新的Spring Boot项目 使用…...

动态创建select

1.动态创建select function createSelect(){ var mySelect document.createElement("select"); mySelect.id "mySelect"; document.body.appendChild(mySelect); } 2.添加选项option function addOption(){ //根据id查找对象&#xff0c; var objdoc…...

linux-centos7操作系统查看系统未挂载的磁盘,挂载磁盘

linux-centos7操作系统查看系统未挂载的磁盘,挂载磁盘 查看当前磁盘空间 根目录 / 下也只有44G,其他目录只有10几G,正式环境肯定不够用 df -h查看硬盘数量和分区情况 fdisk -l查看到/dev/vdb 有500多G了 将/dev/vdb在分出一个区使用 第一步:编辑分区。执行命令fdisk …...

STM32软件定时器

目录 什么是定时器&#xff1f; 软件定时器优缺点 软件定时器原理 软件定时器相关配置 单次定时器和周期定时器 软件定时器相关 API 函数 1. 创建软件定时器 2. 开启软件定时器 3. 停止软件定时器 4. 复位软件定时器 5. 更改软件定时器定时时间 实操 cubeMX配置 …...

[论文阅读] (30)李沐老师视频学习——3.研究的艺术·讲好故事和论点

《娜璋带你读论文》系列主要是督促自己阅读优秀论文及听取学术讲座&#xff0c;并分享给大家&#xff0c;希望您喜欢。由于作者的英文水平和学术能力不高&#xff0c;需要不断提升&#xff0c;所以还请大家批评指正&#xff0c;非常欢迎大家给我留言评论&#xff0c;学术路上期…...

Java中List、Set、Map的区别和实现方式

Java中List、Set、Map的区别和实现方式 List List 是一个有序的集合&#xff0c;即元素按照插入的顺序进行排序&#xff0c;可以有重复的元素。因为是有序的&#xff0c;所以可以根据下标来获取元素或者遍历整个集合内的元素。常用的实现类包括 ArrayList 和 LinkedList。 A…...

@EnableScheduling和@Scheduled注解详解fixedrate和fixeddelay的区别

一、pom.xml中导入必要的依赖&#xff1a; <parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.0.1.RELEASE</version></parent><dependencies><…...

打印金字塔图案总结

那么好了好了&#xff0c;宝子们&#xff0c;今天给大家总结一下“打印金字塔图案”&#xff0c;来吧&#xff0c;开始整活&#xff01;⛳️ 最近在牛客网上刷题&#xff0c;遇到了这个打印类型的题目&#xff0c;我想总结一下&#xff0c;然后分享给大家。 一、正向金字塔 …...

SQL语句的执行顺序

1、SQL语句的一般执行顺序 1 from 找表 2 on 关联条件帅选 3 join 关联表操作 4 where 条件筛选 5 group by 进行分组 6 avg,sum… 执行函数 7 having 分组后筛选 8 select …...

Debian 版本代号与《玩具总动员》

作为最受欢迎的 Linux 发行版之一&#xff0c;Debian 是许多其他发行版的基础&#xff0c;许多非常受欢迎的 Linux 发行版&#xff0c;例如 Ubuntu、Knoppix、PureOS 、Tails、Armbian 以及 Raspbian&#xff0c;都基于 Debian。 经过近 20 个月的开发&#xff0c;2023 年 6 月…...

TypeScript 第一章

欢迎来到 TypeScript 学习&#xff01;本章将为您介绍 TypeScript 的基础知识。 TypeScript 是 JavaScript 的一个超集&#xff0c;它提供了静态类型检查、类、接口等特性&#xff0c;使得编写大型应用程序变得更加容易和可维护。TypeScript 编写的代码可以被编译成 JavaScript…...

【SpringCloud入门】-- Ribbon入门

1.什么是Ribbon&#xff1f; Ribbon就是netflix公司的一个开源项目&#xff0c;主要功能是提供客户端负载均衡算法和服务调用。Ribbon客户端组件提供了完善的配置项&#xff0c;如连接超时&#xff0c;重试等等。Ribbon作为服务消费者的负载均衡器&#xff0c;有两种使用方式&…...

(二)Liunx下ElasticSearch快速搭建

1.下载安装 1&#xff09;环境准备&#xff1a; 操作系统&#xff1a;centos7 es版本&#xff1a;8.8.1 jdk:17 es与jdk等兼容支持查看 2&#xff09;下载安装包上传到服务器&#xff0c;官网地址 https://www.elastic.co/cn/downloads/elasticsearch 3&#xff09;解压文件…...

简洁高端网站模板psd/千峰培训可靠吗?

这是why的第 106 篇原创文章之前有读者问了 Dubbo Cluster 集群的一些问题。那么本文聊一聊 Dubbo 的 Cluster 集群和 Failover Cluster (失败自动切换)策略。如果没有特别说明的地方&#xff0c;源码均是来自 2.7.5 版本。在阅读之前先抛出几个问题&#xff1a;1.Dubbo Cluste…...

如何做聚合类网站/全面网络推广营销策划

最近&#xff0c;Google 开源了其 TCP BBR 拥塞控制算法&#xff0c;并提交到了 Linux 内核&#xff0c;从 4.9 开始&#xff0c;Linux 内核已经用上了该算法。根据以往的传统&#xff0c;Google 总是先在自家的生产环境上线运用后&#xff0c;才会将代码开源&#xff0c;此次也…...

学校网站建设的申请/南昌企业网站建设

基于SSMMavenBootStrapMySQL的在线商城系统[实战视频]—304人已学习 课程介绍 本课程基于MavenSpringSpringMVCMyBatisMySQLBootStrap技术&#xff0c;使用IntelliJ IDEA开发工具。 主要是锻炼SSM技术的运用&#xff0c;通过项目实战&#xff0c;加强对框架技术的理解和运用…...

婚纱摄影的网站怎么做/seo技术培训机构

1.配置Java环境变量 首先进入到终端 输入 vi ~/.bashrc然后输入 i 插入数据 export JAVA_HOME/usr/lib/jvm/jdk15.0.2 export JRE_HOME${JAVA_HOME}/jre export CLASSPATH.:${JAVA_HOME}/lib:${JRE_HOME}/lib export PATH${JAVA_HOME}/bin:$PATH输入esc 然后 :wq 退出 最后输…...

网站制作图片插入代码/2023第二波疫情已经到来了吗

package com.cds.test;import java.util.Arrays;import org.junit.Test;public class RegexLearner {Test/*** 需求&#xff1a;我有如下一个字符串:”91 27 46 38 50”&#xff0c;请写代码实现最终输出结果是&#xff1a;”27 38 46 50 91”* 100* 80* 分析:* 1,将字符串切割…...

亚马逊海外购官方网/win10系统优化软件

1 安装django a: pip安装 pip install Django版本号 b:源码安装 https://www.djangoproject.com/download/ tar -xvzf django-1.9.5.tar.gz cd django-1.9.5 python setup.py install (前提:setuptools已经被安装上了) 2 查看是否已经安装 import django django.VERSION #(1, 9…...