Line編〜Tweetこんなものを作ってみました。カウントダウンタイマーの大枠を作るここではカウントダウンタイマーの箱のようなものを作ります。公式を作るようなイメージ。未来の時間から現在の時間を引き算して、残り時間を求める。最後にそれぞれを配列に保存する。このような手順で箱を作っていきます。計算式はシンプルです。(現在の時間)で残り時間を求めます。ここでは、dueというパラメータを使っていますが、あまり気にしなくてもかまいません。後に、goalという定数に置き換わります。now.getTime();ここで少し計算をしていきます。1,000,000ミリ秒から「秒」「分」を求めるなら、次の計算をします。16.666・・・分このような計算をしていきます。目標から何秒かという数を60で割り算をして、その余り(秒を意味する)を保存します。小数点以下は出てくると具合が悪いので、Math.floorプロパティで整数に整形しています。「%」は%の右に入力する数で割り算をした「余り」を意味します。10を3で割った余りなので1を表す。24);最後に、後に扱い易いように、それぞれ計算したものを配列に保存しておきます。入力されたフォームを読み取るまず、入力用のテキストボックスを用意します。type属性は入力する部分のデータの種類を指定するのに使います。type=”number”を使います。フォーム部分の最後に送信ボタンを置きます。type=”submit”は汎用ボタンを表します。次に、先ほどテキストフィールドに入力したデータを読み取っていきます。textContentプロパティを使って、outputという名前の要素にフォームに入力されたテキストを表示させます。その他の入力フィールドのものは、一旦他の変数としてconstを使って定義しておきます。末尾のvalueは入力された「値」を読み取るために記述します。何度も計算して再表示し続けるまず、未来の日にちを設定します。2で入力され、保存されたものから自動で計算します。daynum);recalc関数がコードの最下部に書かれているので、続いてこの関数が機能する。textContentプロパティを使って、所定の位置に表示させます。呼び出すのは、先ほど計算して配列に保存しておいたものを、配列の番号で呼び出していきます。counter[1];しかし、これだけでは、何度も計算されることはありません。このrecalc関数の中の最後にrefreshという関数があることで、繰り返し計算されています。'0');refresh();}refresh関数では、setTimeoutを使って、ある時間間隔で関数を呼び出します。ここでは1000ミリ秒、つまり1秒間隔でrecalc関数を呼び出しています。おわりにこのような手順でカウントダウンタイマーが作られています。SOA-C02(SysOpsアドミニストレーター)に落ちました。