はじめに
この実験では、JavaScript を使って URL セグメントを結合し、結果の URL を正規化する方法を探ります。この実験では、二重スラッシュを削除し、プロトコルに適切なスラッシュを追加し、パラメータの前のスラッシュを削除し、パラメータを '&'
で結合し、最初のパラメータ区切り文字を正規化するためにさまざまな正規表現を使用するプロセスを案内します。この実験が終了すると、JavaScript を使って効率的に URL セグメントを結合して正規化できるようになります。
This tutorial is from open-source community. Access the source code
💡 このチュートリアルは英語版からAIによって翻訳されています。原文を確認するには、 ここをクリックしてください
この実験では、JavaScript を使って URL セグメントを結合し、結果の URL を正規化する方法を探ります。この実験では、二重スラッシュを削除し、プロトコルに適切なスラッシュを追加し、パラメータの前のスラッシュを削除し、パラメータを '&'
で結合し、最初のパラメータ区切り文字を正規化するためにさまざまな正規表現を使用するプロセスを案内します。この実験が終了すると、JavaScript を使って効率的に URL セグメントを結合して正規化できるようになります。
与えられた URL セグメントを結合し、結果の URL を正規化するには、以下の手順に従います。
Array.prototype.join()
を使って URL セグメントを結合します。String.prototype.replace()
呼び出しを行います。
'&'
で結合し、最初のパラメータ区切り文字を正規化する以下のコード スニペットを使って URL セグメントを結合して正規化します。
const URLJoin = (...args) =>
args
.join("/")
.replace(/[\/]+/g, "/")
.replace(/^(.+):\//, "$1://")
.replace(/^file:/, "file:/")
.replace(/\/(\?|&|#[^!])/g, "$1")
.replace(/\?/g, "&")
.replace("&", "?");
使用例:
URLJoin("http://www.google.com", "a", "/b/cd", "?foo=123", "?bar=foo");
// 'http://www.google.com/a/b/cd?foo=123&bar=foo'
おめでとうございます!あなたは URL セグメントの結合の実験を完了しました。あなたのスキルを向上させるために、LabEx でさらに多くの実験を練習できます。