script変数
3129 ワード
変数の宣言
ES 6以前のJavaScript変数宣言は次のとおりです.
var
キーワードのみ使用可能ですが、ES 6(ECMAScript 2015)以降のjavascriptでは、
let
とconst
のキーワードが追加されます.ES 6が出現した後、
var
を変数宣言に使用することは推奨されない.let
を定数とする宣言はconst
を用いる傾向にある.var
ES 6を使用する前に変数を宣言する方法
var
の場合、代表的な欠点は以下の通りである.var
キーワードは、順次実行されるJavaScript環境にあります.思わぬ結果をもたらす.varキーワードJavaScript実行時より前
実行されるからです.
console.log(foo) //undefined
var foo = 'bar';
var
キーワードは、ブロック単位を有する他の宣言キーワードとは異なる.関数単位を持つ範囲.
{
var bar = 'foo';
}
console.log(bar) //'foo'
割当値
let foo = 'bar';
次の変数の宣言式は、2つの動作を連続的に行います.その動作は次のとおりです.let foo;
foo = 'bar';
let foo = 'bar';
と同様の動作が実行されると、JavaScriptはまず識別子fooのメモリ領域を取得し、その後、この値にundefined
を割り当てる.その後、「bar」が再割り当てされます.let bar;
console.log(bar) // undefined
変数に値を割り当てない場合、JavaScriptはその変数にundefined
を自動的に割り当てます.値の再割り当て
javascriptの変数にデータを再割り当てする操作は、メモリ領域を消去し、新しいメモリ領域を解放するのではなく、再割り当て値をメモリ領域に格納し、メモリに再割り当てされたデータを記録し、変数の名前である識別子を再割り当てすることです.
ごみ収集器
上記の値が再割り当てされると、識別子(変数名)が消え、再アクセスできないデータが残り、無限メモリに積み重ねられるのではなく、ゴミ収集器(ゴミ収集器)によって自動的にメモリから解放されます.
このゴミ収集器が運転時のどの時点で機能するか分かりません.
単純な変数を除いて、外部からアクセスできないすべてのデータ
ごみ収集器によって除去され、メモリ漏れを防止する
Reference
この問題について(script変数), 我々は、より多くの情報をここで見つけました https://velog.io/@tsts_/Javascript-변수テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol