TIL 24|JavaScriptオブジェクト向けプログラミング01


オブジェクト向けの生活符号化プログラミングの授業を見て整理した内容です.

1.対象とは?


対象とは?
これは、
  • に関連付けられた変数と関数をグループ化し、名前を付けます.
  • 名前の情報を整理する際に使用するツール.
  • 1-1. オブジェクトの作成方法、オブジェクトの読み取り方法


    好きな組織メンバーをリスト化したい場合は、→배열と書いてもいいし、객체と書いてもいいです.
    配列とオブジェクトには異なるプロパティがあります.
  • ディレクトリのみであれば、배열を使用できます.
  • const memberArray = ["woody", "jane", "jake"];
    console.log(`memberArray[2] : ${memberArray[2]}`); 
    // memberArray[2] : jake
    どのデータを説明する必要があるかは、
  • を使用します.
  • const memberObject = {
      manager: "woody",
      developer: "jane",
      designer: "jake",
    };
    
    //아래 두가지 모두 객체에 접근할 수 있는 방법이다. 각 방법은 맥락에 따라 필요한 때가 다르다.
    console.log(`memberObject.designer : ${memberObject.designer}`);        //memberObject.designer : jake
    console.log(`memberObject["designer"] : ${memberObject["designer"]}`);  //memberObject["designer"]: jake

    1-2. オブジェクトの変更


    オブジェクトに格納されている要素の値を更新(修正)できます.
    const memberObject = {
      manager: "woody",
      developer: "jane",
      designer: "jake",
    };
    
    memberObject.designer = "james";
    console.log(`memberObject.designer: ${memberObject.designer}`); //memberObject.designer: james
    

    1-3. オブジェクトの削除

    객체という名前の演算子を使用して、オブジェクトの要素を削除します.
    const memberObject = {
      manager: "woody",
      developer: "jane",
      designer: "jake",
    };
    
    delete memberObject.manager; //manager를 삭제
    console.log(`memberObject.manager: ${memberObject.manager}`); //memberObject.manager: undefined

    2.オブジェクトと繰り返し文


    2-1. アレイ内の重複文


    🤔 まず、deleteで重複文をどのように使用するか!
    const memberArray = ["woody", "jane", "jake"];
    
    console.group("array loop"); // 이렇게 해주면 콘솔로그에서 시각적으로 잘 볼 수 있게 로그들을 그룹핑해준다.
    let i = 0;
    while (i < memberArray.length) {
      console.log(i, memberArray[i]);
      i = i + 1;
    }
    console.groupEnd("array loop"); //여기까지 묶어준다.

    2-2. オブジェクトにforを使用して繰り返す


    にオブジェクトでfor in文として使用します.(オブジェクトが使用する배열と配列が使用するfor 문は構文が異なります!)

    ①オブジェクトの鍵を取得する

    const memberObject = {
      manager: "woody",
      developer: "jane",
      designer: "jake",
    };
    
    console.group("object loop");
    for (let name in memberObject) {
      console.log(name);
    }
    console.groupEnd("object loop");

    →これで各要素のキー値が得られます.

    ②取得対象の値

    console.group("object loop");
    for (let name in memberObject) {
      console.log(memberObject[name]); //대괄호를 이용한 객체 원소 접근
    }
    console.groupEnd("object loop");

    🤚🏻 配列と重複文を一緒に使用する必要がありますが、オブジェクトで重複文を使用することは重要ではありません.😅

    オブジェクトはいつ使用しますか?


    3-1. Built-inオブジェクト(内蔵オブジェクト)


    ①パイの値段を知る

    for 문
    console.log(Math.PI);  //3.141592653589793

    ②ランダム抽出

    Math.PI
    console.log(Math.random()); //랜덤이라는 함수를 호출한다 .... 랜덤숫자 뽑기
    // 실행할때마다 콘솔에 찍히는 값이 계속 달라진다!
    // 0.6837366239972693
    // 0.7867487889753042
    // 0.2782611373704331

    ③小数点を整数に下げる

    Math.random()
    //소수점 숫자 내려서 정수만들기 (내림)
    console.log(Math.floor(3.9));  //
    数学だけでなく、日付に関係し、文字に関係し、多くの機能があります.
    しかし、こんなに多くの機能がうまく整理されていなければ、私たちは非常に混乱します.🤪
    したがって、javascriptを作成したユーザは、オブジェクトを使用することを決定し、そのオブジェクトの名前で命名します(たとえば、Math.floor()).
    また、このMathというオブジェクトでは、piに関連するrandomに関連する、下降などの数学に関連するMath변수をグループ化して整理する.
    JavaScript言語はオブジェクト向け言語と呼ばれていますが、直接オブジェクトを作成しなくてもいいです.しかし、実際には、作成したオブジェクトを使用してJavaScriptアプリケーションを作成することは不可能です.相手は見知らぬ人ではありません.私たちはもう相手を使っています.🙂

    4.オブジェクトの作成

    함수のようなオブジェクトを直接作成しましょう.
    const MyMath = {
      PI: Math.PI,
      random: function () {      //method
        return Math.random();
      },
      floor: function (val) {    //method
        return Math.floor(val);
      },
    };
    console.log(MyMath.PI);          //3.141592653589793      ..내가 만든것도 이렇게 출력이 된다!
    console.log(MyMath.random());    //0.1169219865920943
    console.log(MyMath.floor(3.9));  //3
    関数のみを考慮する場合はMathと呼ぶが、関数が対象であればfunctionと呼ぶ.
    →ここはmethodrandomです.
    👏🏻 また,オブジェクトとは同じ趣旨の(=相互に関連する)変数と関数を組み合わせたオブジェクトであり,オブジェクトと命名される.

    5. this


    プログラミング言語にも自分を指す言葉があります.それはfloorです.
    const kim = {
      name: "kim",
      first: 10, //첫 번째 게임의 점수       ..이건 kim이 내부적으로 이미 알고 있는 정보인 것이다.
      second: 20, //두 번째 게임의 점수      ..이건 kim이 내부적으로 이미 알고 있는 정보인 것이다.
    
      //두번의 게임의 점수 합계를 구하는 method
      sum: function () {
        return this.first + this.second;   //그러므로 이렇게 this를 이용해 스스로를 가리킬 수 있다.
      },
    };
    
    console.log(kim.sum()); //30
    →オブジェクト向けの作成者は、あるメソッド(関数)があれば、そのメソッドが自分の属するオブジェクトを指す特殊なキーワードを作成します.
    これがいわゆるものです.*これはJavaScriptオブジェクト向けの非常に重要な概念です!!!