210816 TIL


コード学院の解答


JAVASCRIPT SYNTAX, PART II - Loops


ループの基本概念を熟知すると、実践的な問題に直面します.

質問する


「松節油とウミガメ」をクジラ語に訳してください.
  • クジラ言語には子音はなく、「y」以外の母音のみで構成されている.
  • 「u」と「e」は、出力を2倍にしなければならない.
  • やるべきこと

  • クジラ語の翻訳文を含む変数を生成します.
  • y以外の母音を含む配列を生成する.
  • クジラの言語で翻訳された文を記録する変数を生成します.
  • クジラ言語に訳す文を母音と比較してfor roughを生成する.
  • を比較した後,対応する母音を3番生成の変数に入れる.
  • 5号の過程でeとuの母音であれば2倍にして3号変数に入れる.
  • 配列を文字列にし、大文字で出力します.
  • トラブルシューティング


    1.クジラ言語に翻訳する文を含む変数を生成します。

    let input = 'turpentine and turtles';

    2.y以外の母音を含む配列を生成する。

    const vowels = ['a', 'e','i','o','u'];

    3.クジラ言語で翻訳された文の変数を生成します。

    let whaleTalk = [];

    4.クジラ言語に訳す文を母音と比較し、forループを形成する。

    for(let i = 0; i<input.length; i++){
      for(let j = 0; j<vowels.length; j++){
       
      }
    }
    input変数を含む文字列は類似配列であるため、for文で巡回することができる.
    なぜfor文で変数名をiとするのですか?
    複数の例を見るたびに、iで変数の名前を付けるのが気になるので、検索するとindexを表すものもあれば反復を表すものもあれば、重複を表すものもあることがわかります.意味が異なり,意図が同じであるように,コラボレーションした開発者と私のために,重複文に意味のある変数名を割り当てることが重要であるようだ.

    5.比較後、3番目に生成された変数に該当する母音を入れます。

    for(let i = 0; i<input.length; i++){
      for(let j = 0; j<vowels.length; j++){
        if(input[i] === vowels[j]){
          whaleTalk.push(input[i]);
          }
        }
      }
    }
    else文はオプションなので、使用しなくてもいいです.

    6.5番目の過程でeとuを持つ母音であれば2倍にして3番目の変数に入れる.

    for(let i = 0; i<input.length; i++){
      for(let j = 0; j<vowels.length; j++){
        if(input[i] === vowels[j]){
          whaleTalk.push(input[i]);
          if(input[i] === 'e' || input[i] ==='u'){
            whaleTalk.push(input[i]);
          }
        }
      }
    }

    7.配列を文字列にし、大文字で出力します。

    console.log(whaleTalk.join('').toUpperCase());
    //UUEEIIEEAAUUEE

    完全なコード

    let input = 'turpentine and turtles';
    const vowels = ['a', 'e','i','o','u'];
    let whaleTalk = [];
    
    for(let i = 0; i<input.length; i++){
      for(let j = 0; j<vowels.length; j++){
        if(input[i] === vowels[j]){
          whaleTalk.push(input[i]);
          if(input[i] === 'e' || input[i] ==='u'){
            whaleTalk.push(input[i]);
          }
        }
      }
    }
    
    console.log(whaleTalk.join('').toUpperCase());