You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

获取URL参数中promoCode值并存入sessionStorage的技术需求

提取URL中promoCode参数有效值并存入sessionStorage的JavaScript实现

实现代码

// 可替换为当前页面URL:window.location.href
const targetUrl = 'https://www.constellation.com/solutions/for-your-home/residential-signup.html?zip=77493&promoCode=rockstarcontent/constellation/en/campaigns/DisplayNew2020.html%3futm_source=criteo';

// 解析URL查询参数
const urlParams = new URL(targetUrl).searchParams;
let rawPromoValue = urlParams.get('promoCode') || '';

// 提取有效值:匹配开头连续的字母数字(按需调整正则,比如要匹配到第一个/为止就用/^[^\/]+/)
const validPromoCode = rawPromoValue.match(/^[a-zA-Z0-9]+/)?.[0] || '';

// 存入sessionStorage
if (validPromoCode) {
  sessionStorage.setItem('validPromoCode', validPromoCode);
}

代码说明

  • 要是处理当前页面的URL,直接把targetUrl换成window.location.href就行。
  • 用原生URL和URLSearchParams解析参数,比手动拆字符串靠谱,还能自动处理URL编码的问题。
  • 正则/^[a-zA-Z0-9]+/会提取参数值开头的连续字母数字字符,刚好满足示例里提取rockstar的需求。如果你的场景里有效值是到特定分隔符(比如/或?)为止,改正则就行,比如用/^[^\/?]+/就能提取到第一个/或?之前的内容。
  • 最后把提取到的有效值存进sessionStorage,键名validPromoCode可以根据需求修改。

内容的提问来源于stack exchange,提问作者Homero Miranda

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.16 14:31:01