ホームページ >ウェブフロントエンド >jsチュートリアル >encodeURI()、encodeURIComponent()、またはエスケープ(): URL エンコーディングにどのような場合に使用するか?

encodeURI()、encodeURIComponent()、またはエスケープ(): URL エンコーディングにどのような場合に使用するか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-12-13 22:57:11620ブラウズ

encodeURI(), encodeURIComponent(), or escape(): When to Use Which for URL Encoding?

escape、encodeURI、または encodeURIComponent を使用する場合

クエリ文字列のエンコード

エンコード時Web サーバーに送信するためのクエリ文字列。さまざまな機能に固有の機能があります。目的:

escape()

  • ECMAScript 標準で定義されているにもかかわらず、escape() は廃止されているため、使用しないでください。これには、現代の Web 開発では時代遅れの望ましくない特性があります。

encodeURI()

  • 完全なデータをエンコードするには、encodeURI() を使用します。 URL 文字列。これにより、スペースなどの特殊文字がエンコードされ、有効な URL 構造が保証されます。例:

    encodeURI("http://www.google.com?var1=value1&var2=value2");

    は次を返します:

    http://www.google.com?var1=value1&var2=value2

encodeURIComponent()

  • encodeURIComponent() を使用して、URL 文字列内の特定のパラメータをエンコードします。これにより、スペースなどの特定の文字がパラメータ値内で適切にエンコードされるようになります。例:

    encodeURIComponent("var1=value1&var2=value2");

    は次を返します:

    var1%3Dvalue1%26var2%3Dvalue2

使用ガイドライン

  • エンコード完了の場合URL は、encodeURI() を使用します。
  • エンコードの場合URL 内の特定のパラメータでは、encodeURIComponent() を使用してください。
  • いかなる目的であっても、escape() の使用は避けてください。
  • encodeURI() と encodeURIComponent() は一重引用符 (') をエスケープしないことに注意してください。 。一重引用符を使用して HTML 属性を構築するときにインジェクションの脆弱性から保護するには、代わりに二重引用符 (") を使用するか、一重引用符を '.
としてエンコードすることを検討してください。

以上がencodeURI()、encodeURIComponent()、またはエスケープ(): URL エンコーディングにどのような場合に使用するか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。