2020年9月23日(水)やれたことリスト

台風が近づいてきています。
明日9月24日(木)は新しいレンズが届く日なんだけれど…台風の影響で遅延しかねない。
交通機関が麻痺して仕事へ行けなくなることよりも、新しいレンズが届かないことのほうが心配。
それだけ待ち焦がれたレンズなんです…。

コーディング(JavaScript)

高階関数へ取り掛かる前に、すっかり忘れてしまった式の書き方を思い出すリハビリ。

// 引数用の配列を用意
const arrayNoMoto = [1, 2, 3, 4, 5, 6, 13, 21, 24, 46, 68];
// 引数に与えた値のうち、2で割り切れるもののみを抽出して返す関数
function even(array) {
   let result = [];
   if(array % 2 === 0) {
       for(let element of array) {
           result.push(element);
       }
   }
   return result;
}

出されたお題をクリアするためのコード書き。
引数に与えた値のうち、2で割り切れるもののみを抽出して返す関数を作ろうとしていますが、さて結果は…。

console.log(even(arrayNoMoto));
-> []
undefined

空の配列が返された、やり直し。

function even2(array2) {
   let result2 = [];
   for(let element2 of array2) {
       if(element2 % 2 === 0) {
           result2.push(element2)
       }
   }
   return result2;
}

for ofとifを入れ替えて再実行した結果は…。

console.log(even2(arrayNoMoto));
-> (6) [2, 4, 6, 24, 46, 68]
undefined

できた。

// 引数に与えた値のうち13以上の値のみを抽出し、配列として返す関数
function upToThirteen (array3) {
   let result3 = [];
   for(let element3 of array3) {
       if(element3 > 13) {
           result3.push(element3);
       }
   }
   return result3;
}

引数に与えた値のうち13以上の値のみを抽出し、配列として返す関数。
これはifの条件式を変えるだけなので、変数の指定さえ間違えなければ簡単はなず。

console.log(upToThirteen(arrayNoMoto));
-> (4) [21, 24, 46, 68]
undefined

OK! 大丈夫そう。
次は高階関数を使った式を書くとしますかね…。

まこと

この記事が気に入ったらサポートをしてみませんか?