[Javascript] for 문장에 대한 3가지 쓰기

9778 단어 JavaScript

입문


Javascript의 for 문은 반복 처리를 설명하는 문법입니다.순환이라고도 하지만 이곳의 for문장은 세 가지 기법이 있기 때문에 총괄해 봤다.

카탈로그

  • for 문장(기본형)
  • for in
  • for of
  • for 문장(기본형)


    이전 쓰기 방법에서는 초기 값, 반복 조건, 증가 값 세 개를 매개 변수로 전달해야 합니다.
    for (初期値,繰り返す条件,増加値){
         処理内容
    }
    
    for 문장(기본 형식) 예
    const students = [{id: 1, name: 'Tanaka', grade: 'A'},
    {id: 2, name: 'Suzuki', grade: 'B'},
    {id: 3, name: 'Kimura', grade: 'C'}]
    
    for (let i = 0; i < students.length; i++) {
        let student = students[i];
        if (student.grade === 'A') {
            console.log(i, student.name);
        }
    }
    
    변수 i의 초기 값은 0입니다. 그룹 students의 내용의 수량 반복 처리가 끝날 때 변수 i에 1을 더하는 느낌입니다.

    for in


    그룹 내용의 for 문장을 반복적으로 처리합니다.그 특징은 변수 i에 저장된 그룹의 하표이다.
    for (配列の添字を表す変数 in 配列){
         処理内容
    }
    
    수조의 추가 문자로 사용되는 변수 이름은 이번에 i를 사용했지만 결정되지 않았습니다.그러나'i, j, k'등 변수는 증감을 나타내는 변수로 자주 사용된다.
    (前略
    for (let i in students) {
        let student = students[i];   
          if (student.grade === 'A') {
              console.log(i, student.name);
         }
    }
    
    그룹 students의 내용을 그룹 아래 표시된 i(0~2)로 하나씩 꺼내서 중복 처리합니다.주의,forin은 배열 대상 속성 이름이기 때문에 변수 i의 값도 문자이고,students[i]의 값도 문자입니다.즉, 변수 i는 인덱스로서의 기능을 잃고 다른 연산 등과 관련된 상황에서 오동작의 근원이 되기 때문에 순환에서 회전하는 것을 추천하지 않는다.

    for of


    'for in'과 비슷하지만 변수 i가 수조의 내용을 저장하는 것이 특징이다.다른 for문장에 비해 이 문장은 사용하기 쉽지만, 새로운 설명이기 때문에 낡은 브라우저를 지원하지 않습니다.따라서 Babel과 Webpacker로 버전을 낮춰야 한다.
    for (配列の中身を表す変数 of 配列){
         処理内容
    }
    
    변수는 무엇이든지 가능하지만 기본적으로 수조는 복수 형식이고 변수는 단수 형식을 사용한다.'i, j, k'등은 증가치를 나타내는 데 많이 쓰이기 때문에 이번에는 추천하지 않습니다.
    (前略
    for (let student of students) {
        if (student.grade === 'A') {
            console.log(student.name);
        }
    }
    
    그룹 학생의 내용을 변수 학생에게 전달합니다.

    상기 두 개의 for문장과 마찬가지로 index를 표시할 때 아래와 같이 하십시오.
    ①.keys () 메서드 사용
    // 添字を受け取る場合
    for (let i of students.keys()) { // 数値で渡される
       let student = students[i];
         if (student.grade === 'A') {
             console.log(i, student.name);
        }
     }
    
    

    ②.entries () 방법 사용하기
    // 添字も中身も受け取る場合
    for (let [i, student] of students.entries()) {
        if (student.grade === 'A') {
            console.log(i, student.name);
        }
    }
    

    좋은 웹페이지 즐겨찾기