for in,for用法[JavaScript]


  • 配列はindex順に要素にアクセスします.arr[num]= element
  • オブジェクトは、属性に順番にアクセスするのではなく、キーによって値にアクセスします.obj.key = value;またはobj['key'] = value;
  • for (obj.key in obj) {}


    オブジェクトのループ


    objectはkey:valueからなるobjectです.
    for...inを使用してオブジェクトのプロパティを出力できます.for文ではkeyは任意の単語に置き換えることができますが、可読性のためにkeyが書かれます.
    for(obj.key in obj) {console.log(obj.key)}と入力する方法もあります.

    objectでfor...ofを使用して、次のようにエラーが発生したことを確認します.

    次はfor...inに関する問題.
    let obj1 = { a: apple, b: banana };
    let obj1 = { b: mango; c: lemon };
    
    // 보기의 코드를 여기에 입력하면, 아래의 결과가 나와야 한다.
    extend(obj1, obj2);
    
    console.log(obj1); // {a: apple, b: banana, c: lemon }
    console.log(obj2); // { b: mango; c: lemon }
    
    //정답
    function extend(obj1, obj2) {
      // obj2에 있는 key를 출력해서
      for (let key in obj2) {
        //obj1에 있는 key가 아니라면(obj1에는 없는 key라면)
    	if(!(key in obj1)) {
          // obj1key에 obj2key를 넣어라.
        	obj1[key] = obj2[key];
        }
      }
    }

    for (array.value of array) {}


    ループアレイ


    配列のループが良いことが確認できます.

    シナリオでは...inを使用すると、配列のindexが出力されます.配列もオブジェクト(array object)であるため、キー値に対応するインデックスが出力される.