当前位置:首页 > JavaScript

js实现url

2026-02-02 11:28:40JavaScript

js实现url

使用 URL 构造函数解析 URL

const url = new URL('https://example.com/path?query=123#hash');
console.log(url.href);       // 完整 URL
console.log(url.origin);     // 协议 + 域名 + 端口
console.log(url.protocol);   // 协议 (https:)
console.log(url.host);       // 域名 + 端口
console.log(url.hostname);   // 域名 (example.com)
console.log(url.port);       // 端口
console.log(url.pathname);   // 路径 (/path)
console.log(url.search);      // 查询参数 (?query=123)
console.log(url.hash);       // 哈希 (#hash)

获取当前页面 URL

const currentUrl = window.location.href;
console.log(currentUrl);

修改 URL 参数

const url = new URL(window.location.href);
url.searchParams.set('key', 'value');  // 添加/修改参数
window.history.pushState({}, '', url);  // 更新浏览器 URL(不刷新页面)

解析查询参数

const params = new URLSearchParams(window.location.search);
console.log(params.get('key'));  // 获取单个参数
params.forEach((value, key) => {  // 遍历所有参数
  console.log(key, value);
});

编码与解码 URL 组件

const encoded = encodeURIComponent('测试');  // %E6%B5%8B%E8%AF%95
const decoded = decodeURIComponent(encoded);  // 测试

拼接 URL 路径

const baseUrl = 'https://example.com';
const path = '/api/data';
const fullUrl = new URL(path, baseUrl).href;  // https://example.com/api/data

验证 URL 格式

function isValidUrl(string) {
  try {
    new URL(string);
    return true;
  } catch {
    return false;
  }
}
console.log(isValidUrl('https://example.com'));  // true

标签: jsurl
分享给朋友:

相关文章

js实现上传文件

js实现上传文件

文件上传的基本实现 使用HTML的<input type="file">元素配合JavaScript的File API可以实现文件上传功能。 <input type="file"…

js实现的游戏

js实现的游戏

JavaScript 游戏开发基础 JavaScript 是开发网页游戏的流行选择,因其无需插件即可在浏览器中运行。以下是一些关键技术和资源: HTML5 Canvas Canvas 提供了绘制图形…

js 实现页面刷新

js 实现页面刷新

使用 location.reload() location.reload() 是原生 JavaScript 提供的页面刷新方法。调用该方法会重新加载当前页面,相当于点击浏览器的刷新按钮。 // 基本…

js 实现图片轮播

js 实现图片轮播

基础实现方案 使用HTML、CSS和JavaScript创建一个简单的图片轮播。HTML部分定义轮播容器和图片,CSS负责样式布局,JavaScript处理轮播逻辑。 <div class="…

vue js实现弹窗

vue js实现弹窗

Vue.js 实现弹窗的方法 使用组件实现弹窗 创建一个独立的弹窗组件,例如 Modal.vue,包含弹窗的 HTML 结构和样式。在组件中定义 props 控制弹窗的显示与隐藏。 <temp…

vue.js实现循环

vue.js实现循环

Vue.js 实现循环的方法 在 Vue.js 中,循环通常通过 v-for 指令实现,用于遍历数组或对象并渲染列表。以下是几种常见的循环实现方式: 遍历数组 使用 v-for 遍历数组时,可以获取…