[プログラマー]変な文字を作成する(JavaScript)


問題の説明


文字列sは、1つまたは複数の単語から構成される.各単語は1つ以上のスペース文字で区切られます.各単語の偶数の1番目のアルファベットは大文字で、奇数の1番目のアルファベットは小文字で置換された文字列を返す関数で、solutionを完了します.

せいげんじょうけん

  • 文字列全体のパリティインデックスではなく、単語(スペース単位)に基づいてパリティインデックスを決定する必要があります.
  • 最初の文字は、0番目のインデックスとして偶数文字でなければなりません.
  • I/O例



    に答える

    const s = "try hello world";
    
    function solution(s) {
      const str = s.split(" ");
      var answer = [];
    
      let tmp = "";
      str.forEach((element) => {
        for (let i = 0; i < element.length; i++) {
          tmp += i % 2 == 0 ? element[i].toUpperCase() : element[i].toLowerCase();
        }
    
        answer.push(tmp);
        tmp = "";
      });
    
      return answer.join(" ");
    }
    
    console.log(solution(s));
    map()を利用して、配列巡回後、新しい配列returnを使いたいです.
    希望に反して、forEach()for()を共用した.toLowerCase()関数が初期に使用されていなかったためエラーが発生しました.
    思ったより早く間違いを見つけることができてよかった.

    コードコメント


    プログラマ
    function solution(s) {
      return s
        .split(" ")
        .map((x) =>
           x.split("")
            .map((y, index) => (index % 2 == 0 ? y.toUpperCase() : y.toLowerCase()))
            .join("")
        )
        .join(" ");
    }
    最近新しい関数をたくさん勉強しています.
    私はもっとよく知っていて好きな関数を使いたくありません.用途に応じてもっとよく関数を使いたいです.👍