現代JavaScript Deep Dive定理1変数
4923 ワード
コンピュータメモリ
人間は計算と記憶を頭で処理するが、コンピュータは
cpu
で演算し、メモリで데이터
を記憶する.메모리
は、데이터
のメモリセルを格納することができる集合体である.メモリユニットには1バイトのサイズがあります.コンピュータは、メモリセルのサイズ単位でデータ저장
または읽어
を入力する.コンピュータはすべてのデータに対してバイナリ処理を行い、10+20を実行すると判断した場合、数字10および20は
메모리 공간
に記入しなければならない.その後、cpu
は、それを計算し、結果値30を任意のメモリ領域に格納する.メモリがホテルなら...
演算結果はメモリに格納されますが、この数値は繰り返し使用できません.再使用するには、結果値を格納するメモリ領域に直接アクセスする必要があります.しかし、アドレスを通じて直接アクセスするのは危険です.
意図した値とは異なる値を変更した場合、またはシステムが停止し、メモリを直接制御できる場合、メモリ値を格納するメモリアドレスはコードの実行時の状況に応じてランダムに決定されるため、開発者は使用しにくく、リスクが大きい.それに君にも言わない.
データのプライバシーを保護...
したがって、プログラミング言語は、記憶したい値
저장
および値읽어
をメモリ内で再使用するための변수
と呼ばれるメカニズムを提供する.へんすう
변수
は、1つの値を格納するために保持されるメモリ領域自体またはメモリ領域を識別するために取得される名前である.値段の象徴的な名前です.変数は、値を格納するメモリ領域のアドレスに変換されて実行されます.したがって、開発者は、
변수
を介して値に安全にアクセスすることができる.변수
は1つの値を格納する手段であるが、オブジェクトや配列などのデータ構造を用いて、複数の値を組み合わせて1つの値として使用することができる.最初に実行した10+20を
변수
に入れて実行します.保存されている30という値を変数resultで再使用できるようになりました!
識別
変数名(識別子)は、
메모리 주소
を記憶する.선언
によって通知される必要があります.変数の宣言
変数は
생성
です.変数を使用するには、宣言する必要があります.宣言はvar、let、constキーワードを使用します.△この3つのキーワードは今度はもっと深く見ることができます.変数宣言後、値を指定しない場合は、値が空とみなされる可能性がありますが、javascriptではundefinedという値
암묵적 할당
が使用されます.varキーワードとして宣言された変数は、宣言フェーズと初期化フェーズを同時に行います.すなわち
var score;
このように宣言すると、scoreを登録した後、初期化ステップでundefiendとして指定して初期化します.変数名を含む識別子は
실행 컨텍스트
に登録されます.JavaScriptエンジンがソースコードの評価と実行に必要な環境を提供し、コードの実行結果を実際に管理する分野です.初期化を行わない場合、保存されたメモリ領域は、以前に他のアプリケーションで使用された値を保持する可能性があります.これらの値をゴミ値と呼び、varキーワードはデフォルトの初期化によってこのような状況を防止します.
変数宣言の実行点とエスケープ
c言語では、変数宣言を参照コードの下に置くとエラーが発生します.
コードは上から順に実行されるので、参照エラーが発生するのは当然ですが、この場合JavaScriptはundefinedを出力します.
変数宣言は、実行時よりも前のフェーズで実行されるためです.
JAvaスクリプトは、シーケンス実行前にソースコードの評価を経て、このプロセスで最初にすべての宣言を検索して実行します.すなわち、変数宣言がどこにあるかにかかわらず、他のコードよりも先に実行されます.
このように,変数宣言がコードの先頭に引き上げられるように,動作のJavaScript固有の特徴を変数エスケープと呼ぶ.var、let、const、function、classキーを使用して宣言されたすべての識別子がハイライトされます.
割当値
変数に値を割り当てる場合は、値付け演算子(=)を使用します.この演算子は右の値を左の変数に割り当てます.
var score= 80;
これにより、선언
および할당
を1つのゲートに短縮することができる.このショートカットを使用してもjavascriptは선언
と할당
に分けて実行されます.선언
は、実行時(ソースコードシーケンス実行時)より先に実行される.할당
は、実行時に実行されます.値の再割り当て
割り当てられた値の変数に新しい値を再割り当てすることを再割り当てと呼びます.値を再割り当てできず、変数に格納されている値を変更できない場合は、
상수
と呼ばれます.constキーワードとして宣言された変数は再割り当てが禁止されます.したがって定数を表すことができる.80がscoreという変数に割り当てられ、90に再割り当てされた場合、以前に割り当てられた未定義および80は、値がない状態になります.これはundefinedおよび80が不要であることを意味し、これらの不要な値は
가비지 콜렉터
によって自動的に解除される.가비지 콜렉터
とは、定期的にメモリ容量をチェックして、使用されなくなったメモリを分解する機能です.C言語では、開発者はメモリ管理によってパフォーマンスを直接向上させることができますが、致命的なエラーが発生する可能性があります.JAvascriptは非規範言語であり、開発者はメモリクラッシュがいつ発生するか分からないが、依存する機能が少ないため、一定の生産性を確保することができる.識別子命名規則
예약어
ではありません.(予約語とはプログラミング言語で使用または使用予定の語を指す.ex)wait、break、caseなど...)//카멜케이스
var camelCase;
//스네이크 케이스
var snake_case;
//파스칼 케이스
var PascalCase;
//헝가리안 케이스(타입+식별자)
var strFirstName;
javascriptでは、変数または関数の名前は通常camel caseを使用し、クラスの名前はpascal caseを使用します.Reference
この問題について(現代JavaScript Deep Dive定理1変数), 我々は、より多くの情報をここで見つけました https://velog.io/@minchan_0/모던-자바스크립트-Deep-Dive-정리-1-변수テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol