のフィーチャー値の割当て
今回のリリースでは、JSがどのように値を割り当てるかについて説明します.
次のコードを見て、出力結果を考えてみましょう.
メモリ割り当ては下図のようになります.
1
2
変数に値を割り当てると、既存のメモリ領域が消去され、メモリ領域に割り当てられた値を再記憶するのではなく、新しいメモリ領域が解放され、割り当て値がメモリ領域に格納されることに注意してください.
2番写真を基準として、現在のscore値を除いて、以前定義されていなかった値と80は、任意の識別子に関連付けられていません.つまり、不要な値です.これらの不要な値は、ゴミ収集器によってメモリから自動的に解放され、いつ解放されるか予測できません.
次のコードを見て、出力結果を考えてみましょう.
console.log(score);
var score;//1
score = 80;//2
console.log(score);
がんばっての影響で、変数宣言は1回実行時より前に実行され、割り当て値は2回実行時に実行されます.したがって、最初のコンソールです.log(score)は未定義であり、2番目は80を出力する.console.log(score);
var score = 80;
console.log(score);
console.log(score);
score = 80;
var score;
console.log(score);
両方のコードの出力は同じです.メモリ割り当ては下図のようになります.
1
2
変数に値を割り当てると、既存のメモリ領域が消去され、メモリ領域に割り当てられた値を再記憶するのではなく、新しいメモリ領域が解放され、割り当て値がメモリ領域に格納されることに注意してください.
2番写真を基準として、現在のscore値を除いて、以前定義されていなかった値と80は、任意の識別子に関連付けられていません.つまり、不要な値です.これらの不要な値は、ゴミ収集器によってメモリから自動的に解放され、いつ解放されるか予測できません.
Reference
この問題について(のフィーチャー値の割当て), 我々は、より多くの情報をここで見つけました https://velog.io/@suehdn/JS의-특징-값의-할당テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol