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

前端网页之间传递参数

在多页面应用中,我们可能面临着前端页面之间传递参数的情况,在一个页面获取到一些参数信息后,到另一个页面去进行后续处理,需要将前一个页面得到的一些参数带到第二个页面。当参数较少时,可以在跳转第二个页面时通过search方法把参数传递过去,其实就是这样的方式:

windows.location = pagepath+'?arg='+arg;

第二个页面可以这样把参数取出来:

var reg = new RegExp("(^|&)" + "arg" + "=([^&]*)(&|$)","i");
var arg = location.search.substr(1).match(reg);

由于参数放在search串里,会显示在浏览器的地址栏,另外url有长度限制,参数多了也不美观。
参数较多的情况有什么更好的办法么?
这里要推荐用HTML本地存储-window.localStorage和window.sessionStorage了,两种方式使用方法一样,都是本地KV方式设置读取和删除。不同之处在于localStorage 存储的是没有截止日期的数据,而sessionStorage 存储的数据仅在当前标签页有效,如果用户关闭该浏览器标签页,数据会被删除,在别的标签页打开也是读不到数据的。
赋值参数页面

localStorage.setItem("key1", va1ue1);
localStorage.setItem("key2", value2);
sessionStorage.setItem("key3", va1ue3);
sessionStorage.setItem("key4", value4);

获取参数页面

var value1 = localStorage.getItem("key1");
var value2 = localStorage.getItem("key2");
localStorage.removeItem("key1");
var value3 = sessionStorage.getItem("key3");
var value4 = sessionStorage.getItem("key4");
sessionStorage.removeItem("key4");

两种本地存储在使用场景上要注意下。由于localStorage是本地全局级的,也就是说它不适用同一客户端的多实例,因为当你已经打开了一个赋值页面并进行了一次赋值,尚未跳转到获值页面,再在第二个标签页再次打开赋值的页面并进行了一次赋值,实际上会将你之前赋过的值覆盖掉,这样你再在第一个标签页进入获值页面,那么它获取的实际上是最后一次的赋值,也就是说它是不支持多赋值并行的。而sessionStorage则没有了这个限制,你可以打开任意多个标签页去赋值,任意顺序去跳转到获值页面都没有逻辑上的错误。

相关文章:

前端网页之间传递参数

在多页面应用中,我们可能面临着前端页面之间传递参数的情况,在一个页面获取到一些参数信息后,到另一个页面去进行后续处理,需要将前一个页面得到的一些参数带到第二个页面。当参数较少时,可以在跳转第二个页面时通过se…...

【常见面试题】Golang中,协程数最多可以开多少个?

参考: Goroutine 究竟可以开多少? 一、先说结论: 能开多少个协程,取决于单个协程处理方法所占用的CPU和内存资源(也就是看你计算机运行的应用程序的具体代码逻辑)。 二、具体来说: 如果是C…...

RabbitMQ基础笔记

视频链接:【黑马程序员RabbitMQ入门到实战教程】 文章目录 1.初识MQ1.1.同步调用1.2.异步调用1.3.技术选型 2.RabbitMQ2.1.安装2.1.1 Docker2.1.1 Linux2.1.1 Windows 2.2.收发消息2.2.1.交换机2.2.2.队列2.2.3.绑定关系2.2.4.发送消息 2.3.数据隔离2.3.1.用户管理2…...

大型项目管理神器:掌握yarn monorepo的安装和使用

I. 引言 在当今的前端开发中,由于项目规模的不断增长和多团队协同,Monorepo成为了越来越流行的开发模式。Monorepo指的是将多个相关项目或者模块打包在一起的软件开发模式,它可以让开发人员更好地组织管理代码,减少重复的代码&am…...

算法打卡day28|贪心算法篇02|Leetcode 122.买卖股票的最佳时机 II、55. 跳跃游戏、45.跳跃游戏 II

算法题 Leetcode 122.买卖股票的最佳时机 II 题目链接:122.买卖股票的最佳时机 II 大佬视频讲解:买卖股票的最佳时机 II视频讲解 个人思路 因为只有一只股票,且两天作一个交易单元,那每次只收集正利润就可以最终最多可以获取的利润&#xf…...

2013年认证杯SPSSPRO杯数学建模A题(第一阶段)护岸框架全过程文档及程序

2013年认证杯SPSSPRO杯数学建模 A题 护岸框架 原题再现: 在江河中,堤岸、江心洲的迎水区域被水流长期冲刷侵蚀。在河道整治工程中,需要在受侵蚀严重的部位设置一些人工设施,以减弱水流的冲刷,促进该处泥沙的淤积&…...

【3】3道链表力扣题:删除链表中的节点、反转链表、判断一个链表是否有环

3道链表力扣题 一、删除链表中的节点🌏 题目链接📕 示例🍀 分析💻 代码 二、反转链表🌏 题目链接📕 示例🍀 分析① 递归② 迭代 三、判断一个链表是否有环🌏 题目链接📕 …...

mongodb sharding分片模式的集群数据库,日志治理缺失导致写入数据库报错MongoWriteConcernException的问题总结(上)

一、背景 常见的mongodb集群模式有以下三种: 主从复制(Master-Slave)模式副本集(Replica Set)模式分片(Sharding)模式 公司测试环境搭建的集群采用分片模式,有同事反馈说&#xf…...

苹果Mac OS系统上安装brew

1.命令行安装brew Homebrew是 mac的包管理器,仅需执行相应的命令,就能下载安装需要的软件包,可以省掉自己去下载、解压、拖拽(安装)等繁琐的步骤。 a. 打开HomeBrew官网:https://brew.sh/index.html b. 点击页面上的复制按钮,打…...

应用侧渲染流程

应用侧渲染流程 《Android应用程序UI硬件加速渲染环境初始化过程分析》 https://blog.csdn.net/Luoshengyang/article/details/45769759 《Android HWUI绘制流程》 https://wizzie.top/android/android_HWUI_Draw/#1-gpu%E6%B8%B2%E6%9F%93%E7%A1%AC%E4%BB%B6%E5%8A%A0%E9%…...

学生党开放式运动耳机怎么选?五款超高销量高性价比品牌推荐

开放式运动耳机成为了许多人的运动首选装备,想要在众多的开放式耳机中找到一款价格亲民,且性能在线高性价比的开放式运动耳机可并非那么简单,所以今天我就来为大家推荐五款超高销量、高性价比的运动耳机品牌。 在推荐之前,整理了…...

服务器中有g++,但是查询不到,Command ‘g++‘ not found

有gcc但是查询不到g,gcc版本为9.5.0 (base) zyICML:~$ g -V Command g not found, but can be installed with: apt install g Please ask your administrator. 突然就出现这个问题,导致detectron装不上,现在有时间了专门研究下怎么解决 这…...

count(“0“),split() ,sys.stdin.readline() ,matrix.append, input().strip()

目录 count() 方法主要用于计算一个序列(例如列表、元组或字符串)中某个元素出现的次数...

Flink on Kubernetes (flink-operator) 部署Flink

flink on k8s 官网 https://nightlies.apache.org/flink/flink-kubernetes-operator-docs-release-1.1/docs/try-flink-kubernetes-operator/quick-start/ 我的部署脚本和官网不一样,有些地方官网不够详细 部署k8s集群 注意,按照默认配置至少有两台wo…...

代码随想录算法训练营第三十二天|122.买卖股票的最佳时机II、55. 跳跃游戏、45.跳跃游戏II

122.买卖股票的最佳时机II - &#x1f517; 讲解 - &#x1f517; 方法一&#xff1a; &#x1f4a1;这道题自己想到的办法没有解析那么清晰&#xff0c;大致思路就是第一步先找到第一个可以买进的时间&#xff08;也就是第一个prices[i] < prices[i 1]的i&#xff09;&…...

常见数据库分类介绍及其适用场景

一、引言 数据库是指在计算机系统中&#xff0c;为了结构化地管理和存储数据而建立起来的一种数据管理系统。它以高效、安全和可靠的方式存储和管理用户所需的各种数据&#xff0c;并提供了强大的数据处理和查询功能。随着信息技术的不断发展&#xff0c;数据库已经成为现代计…...

周末总结(2024/03/30)

工作 接受破烂现状&#xff0c;改变状态 上周一周的工作都感觉是摸鱼状态&#xff0c;每天只有三个小时左右的时间聚焦在工作上&#xff0c;其他时间都在胡思乱想。但是我发现可以在工作中学习和下班相关的技术栈。我无意改变自己的工作状态&#xff0c;只想在5月底找好下家然后…...

(75)爬楼梯

文章目录 1. 每日一言2. 题目2.1 解题思路2.1.1 递归2.1.2 记忆化搜索2.1.3 动态规划2.1.4 动态规划空间优化 2.2 代码2.2.1 递归2.2.2 记忆化搜索2.2.3 动态规划2.2.4 动态规划空间优化 3. 结语 1. 每日一言 Happy life lies in a peaceful mind. 幸福的生活存在于心绪的宁静…...

ttkbootstrap界面美化系列之Notebook(四)

在简单的界面设计中&#xff0c;Notebook也是常用的组件之一&#xff0c;Notebook组件的引入可以根据标签来切换不同的界面。使得界面更有层次感&#xff0c;不必都挤在一个界面上。在tkinter中就有Notebook组件&#xff0c;在ttkbootstrap中&#xff0c;同样也对Notebook进行了…...

MySQL8存储过程整合springboot

注意&#xff1a;调用使用mybatis-plus3形式调用&#xff0c;可能会有些区别 1. 创建存储过程 -- -- 生成员工工号的存储过程 DELIMITER $$ CREATE PROCEDURE generate_employee_number(OUT employeeNumber VARCHAR(20)) -- 解释 out 一个返回值 BEGINDECLARE prefix VARCHAR…...

CentOS7下StarRocks 3.1.13集群部署实战:三节点FE高可用配置详解

CentOS7下StarRocks 3.1.13集群部署实战&#xff1a;三节点FE高可用配置详解 在当今数据驱动的商业环境中&#xff0c;企业级分析型数据库的可靠性和性能至关重要。StarRocks作为新一代MPP分析数据库&#xff0c;凭借其卓越的实时分析能力和高并发查询性能&#xff0c;正逐渐成…...

相对位置偏置在视觉Transformer中的应用:为什么Swin Transformer离不开它?

相对位置偏置&#xff1a;视觉Transformer中空间建模的隐形引擎 在计算机视觉领域&#xff0c;Transformer架构正逐步取代传统CNN成为图像理解的新范式。然而&#xff0c;将最初为序列数据设计的Transformer直接应用于二维图像数据时&#xff0c;一个关键挑战浮现&#xff1a;…...

低成本AI助手方案:OpenClaw+Qwen3-32B私有镜像替代GPT-4

低成本AI助手方案&#xff1a;OpenClawQwen3-32B私有镜像替代GPT-4 1. 为什么选择本地化AI助手 去年冬天&#xff0c;当我第37次收到OpenAI API的账单时&#xff0c;手指悬在支付按钮上迟迟按不下去——单月$127的支出已经超出了个人项目的预算红线。作为一个独立开发者&…...

3步打造专属音乐库:开源工具解锁无损音质体验

3步打造专属音乐库&#xff1a;开源工具解锁无损音质体验 【免费下载链接】lxmusic- lxmusic(洛雪音乐)全网最新最全音源 项目地址: https://gitcode.com/gh_mirrors/lx/lxmusic- 作为一款功能强大的开源音乐资源工具&#xff0c;洛雪音乐音源整合了全网海量音乐资源&am…...

从IPython和REPL中找灵感:用prompt_toolkit打造你的专属Python交互式环境

从IPython和REPL中找灵感&#xff1a;用prompt_toolkit打造你的专属Python交互式环境 在Python开发者的日常工作中&#xff0c;交互式环境是不可或缺的伙伴。无论是快速验证代码片段、调试复杂逻辑&#xff0c;还是探索数据结构和API行为&#xff0c;一个优秀的交互式环境能显…...

SMUDebugTool硬件调试实战:如何通过系统管理单元实现AMD Ryzen处理器深度优化

SMUDebugTool硬件调试实战&#xff1a;如何通过系统管理单元实现AMD Ryzen处理器深度优化 【免费下载链接】SMUDebugTool A dedicated tool to help write/read various parameters of Ryzen-based systems, such as manual overclock, SMU, PCI, CPUID, MSR and Power Table. …...

Mac用户必看:Homebrew换源提速全攻略(附清华镜像最新配置)

Mac开发者必备&#xff1a;Homebrew国内镜像加速终极指南 每次打开终端准备用Homebrew安装新工具时&#xff0c;那个缓慢的下载进度条是否让你抓狂&#xff1f;作为Mac生态中最受欢迎的包管理工具&#xff0c;Homebrew的默认服务器位于海外&#xff0c;国内用户常遭遇下载速度以…...

.NET校招真实面经:手写代码、项目深挖、算法到底考什么

文章目录写在前面&#xff1a;校招面试就像相亲&#xff0c;你得先过了"眼缘"这一关第一部分&#xff1a;手写代码——别做"嘴强王者"&#xff0c;要做"手速达人"1.1 面试官为啥非要你手写代码&#xff1f;1.2 .NET校招手写代码到底考啥&#xf…...

如何修复 n8n Postgres 节点中的“节点未设置任何凭据”错误:一篇真正能照着操作的排障博客

如果你在用 n8n 连 Postgres 的时候&#xff0c;突然看到一句让人有点懵的报错&#xff1a;Node has no credentials set 或者中文界面里类似&#xff1a;节点未设置任何凭据先别慌。这个报错看起来像系统在跟你打哑谜&#xff0c;但它的真实意思其实非常朴素&#xff1a; 这个…...

Termux:X11的10个核心功能解析:触摸手势、键盘切换与多显示器支持

Termux:X11的10个核心功能解析&#xff1a;触摸手势、键盘切换与多显示器支持 【免费下载链接】termux-x11 Termux X11 add-on application. Still in early development. 项目地址: https://gitcode.com/gh_mirrors/te/termux-x11 Termux:X11是一个专为Android设备优化…...