モダンjavascript Deep Dive-javascriptの基本構文


この投稿は、poiemawebサイトを参照および参照するためにのみ使用されます.
情報ソース:https://poiemaweb.com/

1.変数


変数は、値を格納(割り当て)し、その格納値を参照するために使用されます.1回の書き込みと破棄ではなく、保持(キャッシュ)が必要な値が変数に書き込まれます.また,変数名により値の意味を明確にすることができ,コードの可読性が向上する.
変数は、格納場所(アドレス)のリポジトリです.位置とは、メモリ上のアドレス(address)です.すなわち、変数とは、メモリアドレス(Memory Address)にアクセスするために人間が理解できる言語として指定された識別子を指す.
変数を宣言するときにvarのキーワードを使用します.代入演算子=は、変数に代入するために使用される.
次の例では、xは変数として宣言され、変数xは整数値6として指定される.
var x; // 변수의 선언
x = 6; // 정수값의 할당

2.値

var str = 'Hello World';
上記の例ではstrという変数を宣言し、文字列文字「HelloWorld」を値として指定します.このとき、文字列文字「HelloWorld」は文字列タイプの値です.
意味データ型(Data Type)プログラミング言語で使用可能な値の型変数(Variable)値とは、メモリ空間に格納されたアドレスの識別子(Identifier)テキストソースコードに直接作成される定数値そのものであり、値を構成する最小単位である.
値段とは、プログラムによって操作可能なオブジェクトを指す.値は、さまざまな方法で生成できます.最も簡単な方法は異種シンボル法を用いることである.
// 숫자 리터럴
10.50
1001

// 문자열 리터럴
'Hello'
"World"

// 불리언 리터럴
true
false

// null 리터럴
null

// undefined 리터럴
undefined

// 객체 리터럴
{ name: 'Lee', gender: 'male' }

// 배열 리터럴
[ 1, 2, 3]

// 정규표현식 리터럴
/ab+c/

// 함수 리터럴
function() {}
数値、文字列、ブール値などの元のタイプの文字は、複数の演算子の被演算子として使用でき、値として評価できます.これにより,文字は演算によって1つの値になる.
// 산술 연산
10.50 + 1001
JavaScriptのすべての値にデータ型があります.JavaScriptは7種類のデータ型を提供します.
  • 元のタイプ(元のデータ型)
  • number
  • string
  • boolean
  • null
  • undefined
  • symbol (New in ECMAScript 6)
  • オブジェクトタイプ(オブジェクトデータ型)
  • object
  • JavaScriptは、CまたはJavaを除き、変数を宣言する際にデータ型を予め指定しない.すなわち、変数に割り当てられた値のタイプは、変数のタイプを動的に決定する.これを動的入力と呼び,JavaScriptが他のプログラミング言語と区別される特徴の一つである.
    // Number
    var num1 = 1001;
    var num2 = 10.50;
    
    // String
    var string1 = 'Hello';
    var string2 = "World";
    
    // Boolean
    var bool = true;
    
    // null
    var foo = null;
    
    // undefined
    var bar;
    
    // Object
    var obj = { name: 'Lee', gender: 'male' };
    
    // Array
    var array = [ 1, 2, 3 ];
    
    // function
    var foo = function() {};

    3.演算子


    演算子(Operator)は、1つ以上の式に対して算術、割当て、比較、論理、タイプ演算などを実行して値を作成します.このとき,演算の対象を被演算子と呼ぶ.
    // 산술 연산자
    var area = 5 * 4; // 20
    
    // 문자열 연결 연산자
    var str = 'My name is ' + 'Lee'; // "My name is Lee"
    
    // 할당 연산자
    var color = 'red'; // "red"
    
    // 비교 연산자
    var foo = 3 > 5; // false
    
    // 논리 연산자
    var bar = (5 > 3) && (2 < 4);  // true
    
    // 타입 연산자
    var type = typeof 'Hi'; // "string"
    
    // 인스턴스 생성 연산자
    var today = new Date(); // Sat Dec 01 2018 00:57:19 GMT+0900 (한국 표준시)
    被演算子のタイプは必ずしも一致しない.このときjavascriptは隠しタイプ強制変換で演算されます.
    var foo = 1 + '10'; // '110'
    var bar = 1 * '10'; // 10

    4.キーワード


    キーワード(keyword)は、実行する操作を規定しています.例えば、varキーワードは、新しい変数の生成を示す.
    // 변수의 선언
    var x = 5 + 6;
    
    // 함수의 선언
    function foo (arg) {
      // 함수 종료 및 값의 반환
      return ++arg;
    }
    
    var i = 0;
    // 반복문
    while (1) {
      if (i > 5) {
        // 반복문 탈출
        break;
      }
      console.log(i);
      i++;
    }

    5.コメント


    コメントは、作成されたコードの意味を説明するために使用されます.
    コードは読みやすいはずです.(可読性が良い)あなたたちが書いたコードを読む人がいたら、「これは何のコードですか?」いつもそう思う瞬間がある.皆さんがしなければならないのは、それらの場所を注釈することです.(読み取り可能なコードは良いコードです)
    1行の注釈は//の後に書かれ、複数行の注釈は/**/の間に書かれている.コメントは解析器によって無視され、実行されません.
    // 주석(Comment)은 작성된 코드의 의미를 설명하기 위해 사용한다. 코드는 읽기(이해하기) 쉬워야 한다.
    
    /*
      주석(Comment)은 작성된 코드의 의미를 설명하기 위해 사용한다.
      코드는 읽기(이해하기) 쉬워야 한다.
    */
    しかし、過度な注釈はかえって可読性を損なう.コメントがなくても読めるコードがベストです.
    // Bad
    // 변수 x는 나이를 나타낸다. x에는 정수 10을 할당한다.
    var x = 10;
    
    // Good
    var age = 10;

    6.ドア


    プログラム(スクリプト)は、コンピュータ(クライアントJavaスクリプト、厳密にはWebブラウザ)が段階的に実行するコマンドの集合である.
    各コマンドは文と呼ばれ、文が実行されると何が起こるか.
    文は文字、演算子、式、キーワードなどからなり、セミコロン(;)で終わる必要があります.
    var x = 5;
    var y = 6;
    var z = x + y;
    
    console.log(z);
    文はコードブロック(コードブロック,{...})を選択します.グループ化の目的は、一緒に実行する文を定義することです.
    // 함수
    function myFunction(x, y) {
      return x + y;
    }
    
    // if 문
    if(x > 0) {
      // do something
    }
    
    // for 문
    for (var i = 0; i < 10; i++) {
      // do something
    }
    ドアは一般的に上から下へ順番に運行されています.これらの実行順序は、制御フローと呼ばれる条件文(if、switch)または繰り返し文(while、for)の使用によって制御することができる.または、関数呼び出しに変更できます.

    JavaScriptは、他の言語とは異なり、ブロック有効範囲(Block-level scope)を作成しません.関数単位の有効範囲(Function-level scope)のみを生成します.

    7.式


    式は値として評価されます.値(文字)、変数、オブジェクトのプロパティ、配列内の要素、関数呼び出し、メソッド呼び出し、被演算子、演算子の組み合わせが式であり、値として計算されます.式は最終的に値になるため、より複雑な式を構成する別の式の一部になる可能性があります.以下の例では、5 * 1050(演算)と評価される.
    // 표현식
    5             // 5
    5 * 10        // 50
    5 * 10 > 10   // true
    (5 * 10 > 10) && (5 * 10 < 100)  // true

    8.文と式の比較


    自然言語では、文が句点で終わる完全な文であるとすれば、式は文を構成する要素である.式自体は文であってもよい.
    // 선언문(Declaration statement)
    var x = 5 * 10; // 표현식 x = 5 * 10를 포함하는 문이다.
    // 할당문(Assignment statement)
    x = 100; // 이 자체가 표현식이지만 완전한 문이기도 하다.
    式と文は非常に似ていて、区別が難しいかもしれません.式は評価されますが、より高い動作は実行できません.文は、var、functionなどの宣言キーを使用して変数または関数を生成したり、if、for、while文などの制御文を生成してプログラムフローを制御したりすることができます.式で計算された値は、実際にコンピュータにコマンドを出したり、何かをしたりするのがドアです.

    9.関数


    関数は、タスクを実行するために必要な文のセットを定義するコードブロックです.関数には、コードブロック内の文をバッチで処理するために必要に応じて呼び出す名前とパラメータがあります.
    // 함수의 정의(함수 선언문)
    function square(number) {
      return number * number;
    }
    関数は呼び出しによって実行され、一度だけ呼び出すのではなく、複数回呼び出すことができます.
    // 함수의 정의(함수 선언문)
    function square(number) {
      return number * number;
    }
    
    // 함수의 호출
    square(2); // 4
    同じ構文の繰り返しではなく、同じタスクを繰り返し実行する必要がある場合は、事前に定義された関数を再使用することが有効です.これらの特性はコード再利用に非常に有用である.

    10.オブジェクト


    JAvascriptはオブジェクト(object)ベースのスクリプト言語であり、javascriptを構成するほとんどの「すべて」がオブジェクトである.元のタイプ(Primitives)以外の値(関数、配列、正規表現など)はオブジェクトです.
    JavaScriptオブジェクトは、キー(名前)と値からなるProperty(プロパティ)の集合です.JavaScriptで使用可能な任意の値をpropertyの値として使用できます.JavaScriptの関数は1レベルのオブジェクトであり、値として扱うことができます.したがって、property値として関数を使用することもでき、property値が関数である場合、一般的な関数を区別する方法と呼ばれる.

    同様に、オブジェクトは、データの属性を表し、データを参照および操作できる動作(behavior)を表すメソッドのセットである.オブジェクトにはデータ(property)とデータに関連する動作(方法)が含まれるため、データと動作を1つのユニットに構造化することが非常に有用である.
    オブジェクト向けの継承を実現するために、JavaScript内のオブジェクトは、「プロトタイプ」と呼ばれるオブジェクトのプロトタイプとメソッドを継承できます.
    この原型は他の言語とは異なる重要な概念である.

    11.配列


    配列は、1つの変数に複数の値を順次格納するために使用されます.JavaScriptの配列はオブジェクトであり、有用な組み込み方法が含まれています.
    var arr = [1, 2, 3, 4, 5];
    
    console.log(arr[1]); // 2