ホームページ >ウェブフロントエンド >jsチュートリアル >クイックヒント:JavaScriptの機能がどのように機能するか
重要な概念:
undefined
、null
、シンボル)にパスバリューを使用し、化合物タイプ(オブジェクトと配列)のパスごとに参照します。 typeof
演算子は割り当て方法を決定します
JavaScriptの参照は、他の変数ではなく、データを直接指します。 プリミティブ値は不変です。化合物値は可変です。複合値を再割り当てすると、新しい参照が作成されます
用語:
スカラー:
化合物:
複数のデータ単位(例:配列、オブジェクト)。オペレーターは、値が値によって割り当てられるのか、参照によって割り当てられるかを決定します。
プリミティブは値によって割り当てられます。化合物値は参照によって割り当てられます。参照は、他の変数や参照ではなく、データを指します。
プリミティブは不変です。化合物値は可変です。
typeof
パスバイレファレンス(複合値):
<code class="language-javascript">let batman = 7; let superman = batman; //assign-by-value superman++; console.log(batman); //7 console.log(superman); //8</code>
新しい参照の作成:
複合値を再割り当てすると、新しいリファレンスが作成されます:
<code class="language-javascript">let flash = [8, 8, 8]; let quicksilver = flash; //assign-by-reference quicksilver.push(0); console.log(flash); //[8, 8, 8, 0] console.log(quicksilver); //[8, 8, 8, 0]</code>
関数の参照:
<code class="language-javascript">let batman = 7; let superman = batman; //assign-by-value superman++; console.log(batman); //7 console.log(superman); //8</code>
関数内の元の化合物値の変更:
<code class="language-javascript">let flash = [8, 8, 8]; let quicksilver = flash; //assign-by-reference quicksilver.push(0); console.log(flash); //[8, 8, 8, 0] console.log(quicksilver); //[8, 8, 8, 0]</code>
浅いコピーの作成:
<code class="language-javascript">let firestorm = [3, 6, 3]; let atom = firestorm; //assign-by-reference atom = [9, 0, 9]; //value is reassigned (creates new reference) console.log(firestorm); //[3, 6, 3] console.log(atom); //[9, 0, 9]</code>
参照によるプリミティブの割り当て(オブジェクトを使用):
<code class="language-javascript">let magneto = [8, 4, 8]; (function(x) { //IIFE x.push(99); x = [1, 4, 1]; //reassign variable (creates new reference) x.push(88); })(magneto); console.log(magneto); //[8, 4, 8, 99]</code>
結論:
JavaScriptの参照システムを理解することは、効率的でバグのないコードを作成するために重要です。
(faqsセクションは簡潔に省略されていますが、ニーズに基づいて再添付される可能性があります。)
以上がクイックヒント:JavaScriptの機能がどのように機能するかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。