04章変数



4.1変数は何ですか。

  • アプリケーションは、データ
  • を処理する.
  • のデータを入力して処理し、出力結果はすべて!
  • 、すなわち変数はデータを管理する核心概念
  • である.
    10 + 20
  • コンピュータはCPUを用いて演算を行い、メモリを用いてデータを格納する.また、すべてのデータはバイナリ形式で処理されます.
  • メモリは、データを格納可能なメモリセルの集合であり、1つのメモリセルのサイズは1バイト(8ビット)
  • である.
    以上の例
  • では、メモリに記憶する任意の位置(メモリアドレス)が10、20であり、CPUはこれらの値を読み出す演算
  • を実行する.
    変数:値を格納するために保持されているメモリ領域自体またはそのメモリ領域を識別します.つまり、価格の位置を示す象徴的な名称といえる.

    4.2識別子

  • 変数名は識別子とも呼ばれます.識別子とは、ある値を区別できる固有の名前です.
  • 識別子は、値ではなくメモリアドレスを記憶します.
  • 変数、関数、クラスなどの名前を識別子と呼ぶことができます.命名規則を遵守し、宣言に基づいてJavaScriptエンジンに識別子の存在を通知する必要があります.
  • 4.3宣言変数


    これは、
  • 変数を生成することを意味する.メモリ値のメモリ領域を予約し、保証されたアドレスを接続して値を保存します.
  • 変数要求宣言
  • ES 6にlet、constキーワードを導入する前に、varキーワードはjsで変数を宣言できる唯一のキーワードである.
  • varキーワード:ブロックレベルスキャン(block-level scope)はサポートされておらず、関数レベルスキャンはサポートされているため、何気なく
    グローバル変数が宣言されたため、副作用も生じる.そこでlet,constキーワードを導入した.
  • var, let, const
    JavaScriptエンジンで変数を宣言するには
  • 宣言フェーズ:JavaScriptエンジン変数の存在を通知する変数名を登録します.
  • 初期化フェーズ:値を格納するメモリ領域を取得し、未定義の初期化を割り当てます.
  • varキーワードを使用した変数宣言は、宣言フェーズと初期化フェーズを同時に行います.
  • は、通常、引数宣言後に最初に割り当てられた値です.varキーワードとして宣言された変数はunddefinedのデフォルト初期化を自動的に行います.
  • varキーワードは、サイレント初期化によってゴミ値(ゴミ値)から安全です.
  • 変数を使用するには、すべての識別子(関数、クラスなど)も同様である必要があります.宣言されていない識別子にアクセスすると、参照エラーが発生します.
  • 4.4変数宣言の実行点と変数エスケープ

    console.log(score);
    var score;
  • 変数宣言文員varscore;consoleは、より多くの変数を参照するコードです.log(score); 前にあります.コードが順番に行われている場合は、変数を宣言する前に、上記のコードを参照すると参照エラーが発生するはずです.でもundefinedが出力されます!🤭
  • これは、変数宣言が、ソースコードの各行の順序で実行されるのではなく、ソースコードの前の段階で最初に実行されるためである.
  • 変数宣言がコードの前に引っ張られるように,動作するJavaScriptの固有の特徴は変数反発である.
  • 4.5値の割当て

  • 変数に値を割り当てる場合は、値付け演算子(=)を使用します.
  • var score;
    score = 80;
    var score = 80; //  변수 선언과 값의 할당 동시에
  • の上の2つのコードは完全に同じです.
  • ただし、変数宣言と値の割り当て実行時間が異なることに注意してください.
  • 変数宣言は、まずソースコードシーケンス実行時の実行時より前に実行され、値の割り当てはソースコードシーケンス実行時の実行時に実行される.
  • 4.6値の再割り当て

  • 再割り当てとは、割り当てられた値の変数に対して新しい値を再割り当てすることを意味する.
  • 再割り当ては、「」の数に格納されている値を別の値に変更することであり、変数と呼ばれます.
  • の値を再割り当てできないため、変数に格納されている値を変更できない場合は、変数ではなく定数です.
  • ES 6で導入されたcontキーワードを使用して、宣言変数の再割り当てを禁止します.すなわちconstキーワード宣言は一度しか割り当てられない変数である.
  • 非仕様言語と仕様言語
  • 言語:メモリ制御は開発者が主導し、開発者の能力に応じて最適なパフォーマンスを確保できます.逆にエラーが発生する可能性があります.
  • 管理言語:メモリの割り当てと解放に使用されるメモリ管理機能を言語の観点から提供します.開発者がメモリを直接制御することは許されません.開発者の能力に依存する部分は比較的小さく、生産性を確保する利点があるが、性能面では損失に耐えなければならない.
  • 4.7識別子命名規則

  • 識別子には、特殊文字以外の文字、数値、ベースコード、およびドル機能は含まれません.
  • 識別子は、特殊文字以外の文字、ベースコード、およびドル記号で開始する必要があります.数字で始まるのは抱擁X
  • リザーバは識別子
  • として使用することができない.
    ミーティングの名前付け
  • は、1つまたは複数の英語単位の識別子を作成する際に、単語に可読性を持たせるために規定された命名規則
  • を有する.
  • javascriptでは、変数または関数の名前は通常camel caseを使用し、コンストラクション関数およびクラスの名前はpascal caseを使用します.コード全体の可読性を向上させるには、カメルボックスとパスカルボックスに従うのが有利です!
  • 🌳 に感銘を与える

  • 変数番号を覚えてください.
  • JSキャメル盤とパスカル盤盤盤
  • を使用
    上記はWekibooksのモダンJavaScript Deep Diveの読み取りと整理です.