第10章対象転


この文章はウィキペディアの「モダンJavaScript Deep Dive」から抜粋した.

対象とは?


元のタイプは1つの値のみを表し、オブジェクトタイプは異なるタイプの値を単位とする複合材料構造です.また、元の値は変更できない値ですが、オブジェクトは変更可能な値です.
オブジェクトは0つ以上のPropertyで構成され、Propertyはキーと値で構成されます.ここでpropertyの値が関数であれば,一般関数を区別する方法と呼ぶ.
Property:オブジェクトの状態を表す値
方法:Property(ステータスデータ)を参照および操作する操作
≪インスタンス|Instance|emdw≫:クラスによって生成され、メモリに格納されるエンティティ.オブジェクトはクラスとインスタンスを含む概念です.

オブジェクトの作成、プロパティ、およびメソッド


JavaScriptは、クラスベースのオブジェクト向け言語とは異なり、複数のオブジェクト作成方法をサポートするプロトタイプベースのオブジェクト向け言語です.
  • オブジェクト文字
  • オブジェクトジェネレータ関数
  • ジェネレータ関数
  • Object.createメソッド
  • クラス(ES 6)
  • ただし、ここでは、最も一般的な[オブジェクト文字](Object Text)を使用してオブジェクトを作成することを学びましょう.
    オブジェクト文字は括弧({ })内で0個以上のプロパティを定義し、変数に割り当てられるとJavaScriptエンジンはオブジェクト文字を解析してオブジェクトを生成します.ここで、オブジェクト文字の括弧はコードブロックを表すものではないので、括弧の末尾にセミコロンを付ける必要があります.
    var person = {
      age: 20,
      name: 'Susan',
      gender: 'male',
    };
    Propertyは、リスト時にカンマ(,)で区切られます.一般的には、最後の番組の後にカンマはつけませんが、大丈夫です.
    propertyのキーはproperty値にアクセスできる名前として識別子として機能します.ただし、識別子命名規則を使用する必要はありません.この場合は引用符を使用する必要があります.(なるべくルールを守ることをお勧めします)
    JavaScriptで使用可能なすべての値をproperty値として使用できます.JavaScriptでは、関数はオブジェクト(一級オブジェクト)であるため、当然property値として指定できますが、この場合はメソッドと呼ばれます.

    プロパティの操作

  • アクセス
    プログラムに近づく方法には,句点表記法と括弧表記法の2つがある.使い方は以下の通りです.
  • //객체는 위에서 생성한 person을 그대로 사용.
    
    console.log(person.age);  //20, 마침표 표기법 -> 객체.키
    console.log(person[name]);  //'Susan', 대괄호 표기법 -> 객체[키]
  • 更新
    既存のプログラムに値を割り当てると、新しい値に更新されます.
  • person.age = 24;
    console.log(person);  //{age:24, name:'Susan', gender:'male'}
  • 動的作成
    オブジェクトの最初の作成時に作成されていないプロパティが割り当てられている場合は、自動的にキー:値(Key:Value)として作成されます.
  • person.address = 'Seoul';
    console.log(person);  //{age:24, name:'Susan', gender:'male', address:'Seoul'}
    削除
  • deleteという演算子は、オブジェクトのpropertyを削除します.
  • delete person.gender;
    console.log(person);  //{age:24, name:'Susan', address:'Seoul'}

    終了時..。


    ES 6では,メソッドを定義する際に関数キーワードを省略したサムネイルで表すことができ,この定義の方法は従来のメソッドで指定した方法とは異なる.26章で見てみましょう.
    //기존 방식
    var ani = {
      var move: function() { console.log("걷는다."); }
    };
    ani.move();  //"걷는다."
    
    //축약 표현
    var ani = {
      var move() { console.log("걷는다."); }
    };
    ani.move();  //"걷는다."