📜  javascript 转到 url - Javascript (1)

📅  最后修改于: 2023-12-03 15:31:46.227000             🧑  作者: Mango

在 Javascript 中将字符串转换为 URL

在 JavaScript 中,有时需要将字符串转换为 URL。这种情况可能是由于以下原因:

  • 将某些数据发送到服务器(例如,在 AJAX 调用中)。
  • 在浏览器地址栏中导航到新的页面。

无论你的具体用例是什么,将字符串转换为 URL 的过程非常简单。

使用 encodeURI() / encodeURIComponent()

JavaScript 提供了两个函数,可以将字符串转换为 URL:

  • encodeURI(): 用于将字符串转换为符合 URL 规范的格式,但是并不会对 URL 中的特殊字符进行编码(如 #, ?, &, 等)。
  • encodeURIComponent(): 用于将字符串转换为符合 URL 规范的格式,并且会对 URL 中的特殊字符进行编码。

下面是一个简单的示例,展示了如何在 JavaScript 中使用这两个函数将字符串转换为 URL:

let url = 'https://www.google.com/search?q=' + encodeURI('JavaScript 转到 URL');
console.log(url);
// 打印: https://www.google.com/search?q=JavaScript%20%E8%BD%AC%E5%88%B0%20URL
使用 URLSearchParams 对象

在 ES6 中,还引入了一个新的对象 URLSearchParams,可以以更简单的方式操作 URL 查询字符串。

URLSearchParams 对象有多个有用的方法,例如:

  • set(name, value): 将名称为 name 的查询参数设置为值 value
  • get(name): 返回名称为 name 的查询参数的值。
  • has(name): 判断是否存在名称为 name 的查询参数。
  • toString(): 将 URLSearchParams 对象转换为字符串。

下面是一个简单的使用示例:

let params = new URLSearchParams();
params.set('q', 'JavaScript 转到 URL');
let url = 'https://www.google.com/search?' + params.toString();
console.log(url);
// 打印: https://www.google.com/search?q=JavaScript+%E8%BD%AC%E5%88%B0+URL
总结

无论你使用哪种方法,将字符串转换为 URL 都非常简单。只需调用函数或使用 URLSearchParams 对象即可。记住,如果需要对 URL 中的特殊字符进行编码,请使用 encodeURIComponent()