jsノート——基本文法

3626 ワード

JavaScript標準参考教程(alpha)から来ました.by阮一峰
1.語句
JavaScriptプログラムの実行単位はラインとして、つまり一行ずつ実行します.一般的には、行ごとに文があります.
ステートメント(statement)は、次のようなタスクを完了するための動作です.たとえば、1行の割当文です.var a = 1 + 3;このステートメントは、まずvarコマンドを使用して変数aを宣言し、1+3の演算結果を変数aに割り当てます.1+3は表式(expression)と呼ばれ、戻り値を得るための計算式です.語句と表現の違いは、前者は主にある動作のために、通常は値を返す必要がないことです.後者は戻り値を得るために必ず値を返します.注意:表式はセミコロンの末尾を必要としません.表式の後にセミコロンを追加すると、JavaScriptエンジンは表式を文と見なし、意味のない文を生み出します.
2.変数
変数は「値」に対する参照であり、変数を使用することは参照値と同じです.各変数には変数名があります.var a; a = 1;は変数である宣言および割当値var a; a // undefinedは、変数に対してのみ指定されていない場合、変数の値はundefinedであり、「無定義」を示す.var a = 1;a = 1;ですが、varを書かないと、意図を表現するのに役立ちませんし、知らず知らずのうちにグローバル変数を作成しやすくなりますので、varコマンドを使用して変数を宣言することをおすすめします.ps:var a=1とa=1の違いは主にdeleteコマンドでは前者を削除できません.x // ReferenceError: x is not defined変数が宣言されていない場合は、JavaScriptはエラーを報告し、変数が定義されていないことを教えます.var x = 1; var x; x // 1変数xが2回宣言した場合、2回目の宣言は無効となります.var x = 1; var x = 2;=var x = 1; var x; x = 2;ですが、第二の宣言と同時に値が与えられた場合、前の値が上書きされます.
変数アップグレード:varの命令声明は、どこにあっても、コードの先頭に上げてまず実行します.
3.識別子
識別子命名規則は以下の通りです.
最初の文字は、任意のUnicode文字(英字と他の言語のアルファベットを含む)とドル記号($)とアンダースコア(_)です.二番目の文字と後ろの文字はユニック、ドル記号、下線以外に数字0-9も使えます.
ps:中国語は合法的な識別子であり、変数名として使用することができる.
JavaScriptには、識別子として使用できないいくつかの保留文字があります.argments、break、case、catch、class、const、continue、debuggar、default、delete、do、else、enum、export、extens、false、finally、for、function、printer、prection、fterblete、propum、putereturn、static、super、switch、this、throw、true、try、typeof、var、void、while、with、yield.
識別子として提案しない:Infinity、NaN、undefined
4.条件文
条件文は、ある条件を満たすだけで、構文を実行する構文を提供します.JavaScriptはif構造とswitch構造を提供し、条件判断を完成する.
4.1 if構造
if (expression   ){
  statement  ;
}
なお、ifの後の表現は、「賦値式」(=)と「厳密に等しい演算子」(==)または「等しい演算子」(=)を混同しないでください.「賦値式」は比較的効果がないからです.
4.2 if…else構造
if (m === 3) {
  // then
} else {
  // else
}
上のコードは変数mが3に等しいかどうかを判断します.ifコードブロックを実行しないとelseコードブロックを実行します.
4.3 switch構造
switch (fruit) {
  case "banana":
    // ...
    break;
  case "apple":
    // ...
    break;
  default:
    // ...
}
上のコードは変数fuitの値に基づいて、該当するcaseを実行することを選択します.すべてのcaseが該当しない場合、最後のdefault部分を実行します.各caseコードブロックの内部のbreak文は少なくてはいけません.そうでないと次のcaseコードブロックを実行していきます.switch構造ではありません.
4.3元演算子?
JavaScriptにはもう一つの三元演算子があります.論理的な判断にも用いることができる.
(condition) ? expr1 : expr2
上のコードでは、conditionがtrueであれば、expr 1の値を返します.そうでなければ、expr 2の値を返します.
5.循環文
循環文は、ある動作を繰り返し実行するために使用されます.様々な形があります.
5.1 whileサイクル
While文には循環条件とコードブロックが含まれています.条件が本当であれば、コードブロックを繰り返し実行します.
while (expression   ){
  statement  ;
}
5.2 forサイクル
for文はループコマンドの他の形式であり、ループの起点、終点、終了条件を指定できます.そのフォーマットは以下の通りです.
for (initialize; test; increment) {
  statement
}
for文の後ろの括弧には、3つの表現があります.
  • 初期化表現(initialize):サイクルの初期値を決定し、サイクルの開始時に一回だけ実行します.
  • テスト式(test):ループ条件をチェックし、本当であればその後の動作を行います.
  • は、式をインクリメントします.その後の動作を完了し、前のステップに戻り、ループ条件をもう一度チェックします.
  • 例:
    var x = 3;
    for (var i = 0; i < x; i++) {
      console.log(i);
    }
    // 0
    // 1
    // 2
    
    上のコードでは、初期化式はvar i=0であり、変数iを初期化する.試験式はi<xであり、iがxより小さいとループが実行されます.インクリメント表現はi++で、サイクルが終了するごとにiが1ずつ増加します.
    whileに相当する:
    var x = 3;
    var i = 0;
    
    while (i < x) {
      console.log(i);
      i++;
    }
    
    5.3ド…whileサイクル
    ド…whileサイクルはwhileサイクルと似ていますが、唯一の違いは循環体を一回運転して循環条件を判断することです.
    do {
      statement
    } while (expression);
    
    5.4 break文とcontine文
    break文はコードブロックまたはループを飛び出すために使用されます.continue文は、このサイクルを直ちに終了し、循環構造の頭に戻り、次のサイクルを開始します.