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

Chrome书签脚本报错:URL转换后参数显示undefined的排查求助

问题排查与修复方案

问题原因

核心问题是**location.pathname不包含URL哈希(#)后的内容**。你的示例URL中,目标值1234567位于哈希#/dashboard/1234567?pageId=...内部,而location.pathname仅能获取到/reporting-dashboard/,拆分后数组长度不足,导致pathArray[3]取值为undefined。

修复后的书签脚本

// 从哈希部分提取目标ID
const hashPath = location.hash.slice(1); // 去掉开头的#,得到"/dashboard/1234567?pageId=..."
const hashParts = hashPath.split('/');
const namespaceId = hashParts[2]; // 对应哈希路径中的1234567

// 拼接新URL(自动适配当前环境的协议和主机名)
const newUrl = `${location.protocol}//${location.hostname}/tool/permissions/resources?namespace=${namespaceId}`;

// 打开新页面跳转
window.open(newUrl);

关键说明

  • location.hash.slice(1)移除哈希开头的#,将哈希内容转为可处理的路径格式
  • 拆分后的hashParts数组为['', 'dashboard', '1234567', '?pageId=...'],取索引2即可拿到目标ID
  • 使用模板字符串拼接URL更简洁,同时保留了自动适配不同环境主机名的逻辑

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.18 09:05:28