Webプログラマーの場合、単純なURL形式を扱うことは悪夢かもしれません。 URLには、分析に影響を与える多くのコンポーネントがあると想像してください。
carcherle /文字から始まります
・・・ //で始まりますか
・・・で始まりますか?
#それは#で始まりますか
…等
このアドレスの絶対アドレスが必要なとき、処理と解析を判断する方法は? HTTPプロトコルまたはHTTPSプロトコルからのものです。それは頭痛です。幸いなことに、絶対的なアドレスを決定する簡単な方法があります。これは、このタスクの完了を支援する要素を作成することです。
JavaScriptコード
ここでは、関数を返すJavaScript関数を使用します。これを行うには多くの利点がありますが、これについては以下で説明します。
var getabsoluteurl =(function(){var a; return function(url){if(!a)a = document.createelement( 'a'); a.href = url; return a.href;};})();この機能は少し複雑に見えます。最初に変数に関数を割り当て、この関数には別の関数と事前定義された変数があります。誰かが、なぜ関数を埋め込む必要があるのか、それがこれに簡素化できるかどうかを尋ねるかもしれません。
var getabsoluteurl = function(url){var a = document.createelement( 'a'); A.href = url; a.hrefを返します;}もちろん、この単純な書き込み方法は誤って計算することはできませんが、機能を埋め込む練習によりコードの複雑さが増加するが、A要素が一度だけ作成され、再利用され、時間とメモリを節約できることを保証できるため、十分に完璧ではありません。
たぶん誰かが別の質問をするでしょう。ネストされた第二の関数に判断があるかどうか、なぜそれが必要なのか、そしてそれを次のように書いてはいけないのかと疑問に思います。
var getabsoluteurl =(function(){var a = document.createelement( 'a'); return function(url){a.href = url; return a.href;};})()();これは当然のことながら実行する方法であり、関数にエラーはありません。しかし、微妙なことは、判断ステートメントがない場合、この関数を定義する場合、機能がコードによって呼び出されなくても、A要素が初期化されるということです。 IF判断ステートメントを使用すると、A要素が実際に使用されると作成され、記憶とCPUの無駄はありません。
OK、この方法では、どのような種類のURLアドレスを渡しても、絶対アドレスを返します。
みなさん、試してみましょう!
上記はこの記事のすべての内容です。みんなの学習に役立つことを願っています。誰もがwulin.comをもっとサポートすることを願っています。