学习:JS[8]本地存储+正则表达式

一.本地存储

1.介绍

  • 将数据存储到用户浏览器当中
  • 设置、读取方便、页面刷新不丢失数据

2.本地存储分类-localStorage

a.语法

(1)存储数据

//存储数据 localStorage.setItem(键,值)如
localStorage.setItem('uname','哈哈')

(2)获取数据

//获取方式 都加引号 localStorage.getItem('键')
localStorage.getItem('uname')

(3)删除数据

//删除数据   localStorage.removeItem(键)
localStorage.removeItem('uname')

(4)修改数据

//修改数据 localStorage.setItem(键,修改内容)
localStorage.setItem('uname','嘻嘻')

注意

  • 本地存储只能存储字符串类型
  • 所有的键都要加引号

3.存储复杂数据类型

(1)直接存一个对象,不能直接使用

const obj = {uname: '哈哈',age: 99,gender: '女'}//存储复杂数据类型localStorage.setItem('obj', obj)

(2)将负责数据类型转化成JSON字符串,存储到本地

语法:JSON.stringfy(复杂数据类型)

  localStorage.setItem('obj',JSON.stringify(obj))

(3)取的时候把JSON转换回对象

 console.log(JSON.parse(localStorage.getItem('obj')))

4.数组中的map方法

  • 遍历数组处理数据,并且返回新的数组
  • map也称为映射
const arr=['red','blue','pink']
arr.map(function(ele,index){
return ele+'颜色'
})

5.join()方法

  • 把数组中的所有元素转换一个字符串
const arr=['red颜色','blue颜色','green颜色']
//小括号为空则逗号分割
newArr.join()
//小括号是空字符串,则元素之间没有分隔符号
newArr.join('')
//小括号里是什么就以什么为分割
newArr.join('|')//以|为分割

二.正则表达式

1.语法

//1.定义规则,查找字符串里是否含有//的一条规则
const 变量名=/表达式/
//变量名一般使用reg,正则表达式的意思//2.是否匹配
规则.test(查找内容)//返回的值是true或false//3.exec()
规则.exec(查找内容)

2.元字符(特殊字符)

a.边界符,提示字符所处的位置

边界符说明
^表示匹配行首的文本(以谁开始)
$表示匹配行尾的文本(以谁结束)

^和$一起出现,表示必须是精确匹配

b.量词(表示重复次数)

量词说明
*重复0次或多次
+重复一次或更多次
?重复0次或1次
{n}重复n次
{n,}重复n次或更多次
{n,m}重复n到m次

c.字符类

(1)[ ]匹配字符型

只要包含里面其中的一个(只选一个)

形如:[abc](a,b,c其中一个)、[a-z](a到z其中一个)、[a-zA-Z0-9](表示小写a到z,大写A到Z,数字0到9)

(2) . 匹配除换行符之外的任何单个字符

(3)预定义:某些常见模式的简写方式

预定类说明
\d匹配0-9之间的任一数字,相当于[0-9]
\D匹配所有0-9以外的字符,相当于[^0-9]
\w匹配任意的字母、数字和下划线,相当于[A-Za-z0-9_]
\W除所有字母、数字和下划线,以外的字符,相当于[^A-Za-z0-9_]
\s匹配空格(包括换行符、制表符、空格符等),相当于[\t\r\n\v\f]
\S匹配非空格的字符,相当于[^\t\r\n\v\f]

日期格式:  ^\d{4}-\d{1,2}-\d{1,2}

3.修饰符

a.语法

/表达式/修饰符

i--不区分大小写(ignore)

g--匹配所有满足正则表达式的结果(global),全局查找

b.replace替换

字符串.replace(/正则表达式/,'替换的文本')

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/web/92581.shtml
繁体地址,请注明出处:http://hk.pswp.cn/web/92581.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C++算法练习:单词识别

做题记录:牛客习题:单词识别 相关题目代码已经提交到gitee中:楼田莉子 (riko-lou-tian) - Gitee.com喜欢请点个赞谢谢 目录 题目: C 字符函数头文件头文件:(C 标准库)核心函数功能说明&#…

从免费到盈利:Coze智能体1小时封装变现全流程指南——井云科技

在AI技术普惠的浪潮下,Coze等智能体平台让零代码开发者也能快速构建功能强大的AI助手。然而,许多创作者在完成智能体开发后,却面临“工具免费、成本自担”的困境——用户无限制调用导致算力成本飙升,想收费又缺乏成熟的支付与用户…

C++学习之STL学习:map/set

通过前面的学习,我们已经对C STL有了初步了解。然而,STL作为一个庞大复杂的体系,远不止这些内容。接下来,我们将深入探讨STL中的另外两个重要组件——map和set。 作者的个人gitee:楼田莉子 (riko-lou-tian) - Gitee.co…

[学习] CORDIC算法详解:从数学原理到反正切计算实战

CORDIC算法详解:从数学原理到反正切计算实战 文章目录CORDIC算法详解:从数学原理到反正切计算实战引言一、数学原理二、求解流程(旋转模式)三、典型应用场景四、反正切计算示例(Python实现)五、算法流程可视…

3款强力的Windows系统软件卸载工具

1、Geek 下载地址:https://download.csdn.net/download/weixin_42203093/91625765 Geek Uninstaller 是一款专业的 Windows 软件卸载工具,主要用于卸载软件并清理残留垃圾: 特点 体积小巧便携:软件体积约为 1.7M,是单…

AcWing 4579. 相遇问题

这道题做个今天的结尾 比较简单 正在备战csp吗,正好刷一下 难度:简单时/空限制:1s / 256MB总通过数:1738总尝试数:2584来源: CSP-J 2022 模拟赛 原题链接 4579. 相遇问题 - AcWing题库 题目描述 一…

基于clodop和Chrome原生打印的标签实现方法与性能对比

今天想看看,基于clodop和Chrome原生打印的标签实现方法与性能对比。先看看DeepSeek关于这个问题的回答! CloudPrint 和 Chrome 原生打印的区别 基本概念差异 CloudPrint (Clodop) 是基于云的打印服务解决方案需要安装专门的客户端程序支持跨平台、跨设备…

百度网盘如何做到下载速度最快?OpenSpeedy绿色安装版下载,开源免费网盘加速

下载地址获取点击这里打开:OpenSpeedy下载地址 打开解压后的文件夹,找到【OpenSpeedy.exe】应用程序,右键选择【以管理员身份运行】。 添加图片注释,不超过 140 字(可选) 主要特性: 免费开源蛮…

科技云报到:热链路革命:阿卡 CRM 的 GTM 定位突围

科技云报道原创。在企业数字化的工具箱里,“CRM” 一词早已不是 “全流程客户管理” 的代名词,而是从营销获客到客户信息沉淀,再到长期关系维护,仿佛要包揽从线索到复购的所有环节。但成立仅两年半的阿卡 CRM,却在实践…

什么是Graphical Abstract

什么是Graphical Abstract 现在都需要用Graphical Abstract,新加的好像。图形摘要(Graphical Abstract)是学术论文中一种以可视化方式浓缩呈现研究核心内容的图表,它通过简洁的图形、流程图、示意图或组合视觉元素,直观…

心灵笔记:正念冥想

定义:正念冥想(Mindfulness Meditation)是一种源自东方禅修、结合现代心理学的心理训练方法,核心是有意识地将注意力集中在当下的体验上,不加评判地觉察自身的 thoughts(想法)、feelings&#x…

微软推出革命性AI安全工具Project IRE,重塑网络安全防御新范式

面对日益复杂的网络安全威胁,微软近日发布了具有里程碑意义的Project IRE AI工具。这项创新性解决方案将人工智能与逆向工程技术深度融合,开创了自动化威胁检测的新纪元。据微软官方披露,该工具能够在不依赖人工干预的情况下,自主…

C#Attribute(特性)的定义与使用

1.什么是 Attribute1.1 定义 Attribute 是一种“声明式元数据(declarative metadata)”机制。 • 附加位置:程序集、模块、类型、字段、属性、方法、方法参数、方法返回值、事件、泛型参数、局部变量、本地函数、Lambda 表达式、甚至表达式树…

飞书对接E签宝完整方案

1、概述飞书和E签宝在各自领域都属于领先的产品,但因为E签宝与钉钉的特殊关系,一直以来E签宝都只实现了与钉钉的深度集成,一家企业如果想同时使用飞书和E签宝,则需要通过S-HUB这样的产品来进行桥接,用户在飞书端审批&a…

Mysql快速导出数据库设计说明书word文档(表结构、类型、注释、是否有主键)

主要有三种方式,根据你的需求来选择: 1、Mysql语句查询 优点:无需安装额外的软件,使用你常用的数据库可视化工具即可 缺点:受限于你的数据库可视化工具的导出功能,需要额外写脚本进行处理 2、Python脚本…

DigitalProductId解密算法php调试版piddebug.php

<?php // 使用数组字面量 $digits [B, C, D, F, G, H, J, K, M, P, Q, R,T, V, W, X, Y, 2, 3, 4, 6, 7, 8, 9]; //foreach ($digits as $digit) { // echo $digit."<br>"; //}$hexPidarray(0xc2,0x49,0x4b,0xcc,0x60,0x34,0x09,0xcd,0x96,0xf7,0xec,0…

IDEA快捷键壁纸分享

说明&#xff08;1&#xff09;因为显示器的尺寸不同&#xff0c;对快捷键显示的位置稍作调整 &#xff08;2&#xff09;这里默认您熟悉常用的快捷键&#xff0c;分享一些功能好用但是用的少的快捷键空壁纸笔记本壁纸&#xff08;15.6寸&#xff09;24 寸显示器壁纸

InnoDB vs MyISAM: MySQL存储引擎的世纪对决

选错存储引擎&#xff1f;你的数据库性能可能暴跌80%&#xff01; 本文用最直观的对比拆解MySQL两大核心存储引擎的差异&#xff0c;让你彻底明白什么场景该选谁。一、引擎全景图: 数据库的"心脏"之争 ❤️ #mermaid-svg-KTQko8kEUvOkTb4L {font-family:"trebuc…

【Avalonia】无开发者账号使用iOS真机调试跨平台应用

文章目录1. 要求1.1 无需Apple开发者账号1.2 最新版mac系统1.3 最新版Xcode2. 配对Mac3. 配置开发证书3.1 创建一个名为MTClient的Xcode项目3.2 找到签名证书3.3 配置签名3.4 配置标识符4. 真机调试4.1 设置应用首屏 Launch Screen4.2 设置应用图标5. 问题5.1 DI异常该问题的解…

【LLM实战|langchain】langchain基础

every blog every motto: You can do more than you think. https://blog.csdn.net/weixin_39190382?typeblog 0. 前言 【LLM实战|langchain】langchain基础 1. 模型 I/O 封装 把不同的模型&#xff0c;统一封装成一个接口&#xff0c;方便更换模型而不用重构代码。 1.1 …