jquery $をエミュレートするjavascriptを見ているうちに、私はこのシナリオではreturn
が必要な理由を理解できません。ここでreturn文が必要な理由を理解できない
は私が
$ = function(selector){
if (!(this instanceof $)) {
return new $(selector);
}
var elements = document.querySelectorAll(selector);
Array.prototype.push.apply(this,elements);
};
で探していたコードで新しい$(セレクタ)を返すことがちょうど新しい$(セレクタ)動作しない理由を誰かが私に説明していただけますか?あなたがリターンをするとき、最初から新しいキーワードですべてを始めるのですか?私はこれを描くのに苦労している。助けてください。
申し訳ありませんが、私はこの非常に明確にしていない場合。私の質問は、ステートメントのreturn new $(セレクタ)がちょうど新しい$(セレクタ)と異なるvsを実行していることです。このif文の中にデバッガを置いてウォッチャをthis
に置くと、最初はthis
がウィンドウになり、関数をステップ実行すると、新しい$(セレクタ)を返して実行した後、if文に戻るこれがinstanceof $の場合(今はthis
が$を指しているので)それがどうして私の質問です。誰かが "新しい$(セレクタ)を返す"ときに誰かに教えてもらえますか?
申し訳ありませんが、私は「新しい」というキーワードが何をしているのか尋ねていません。私はなぜ、「復帰」が必要なのかを尋ねています。 – user3502374
元の投稿に編集後の記事を長くしました。私の質問が今ではっきりしているかどうか見ることができますか? – user3502374
私は、返品がどのように呼び出されたかについて、はるかに詳細な吹き飛ばしの口座を追加しました。 –