
プログラマハック
2019.12.04
プログラマーの仕事はなくならない!プログラマーの需要を徹底解説
今回は、「プログラマーの需要」について、現状と将来性も含めご紹介します。 プログラマーになろうとしたとき、「AI(人口知能)が普及しているから、プログラマーの仕事は将来なくなるかも」「需要が高いプログラマーになるためには […]
JavaScript
2017.11.02
JavaScriptのDateオブジェクトで取得した日時データを表示する際には、通常、必要な形にフォーマットして使用します。
今回は、日付と時間のフォーマットについて紹介します。
1.Dateオブジェクトのデータをformat
2.Moment.jsを使用してformat
Dateオブジェクトを使用して日時データを取得した後、必要な形にフォーマットする場合は、通常、次のように文字列を連結して行います。
// 現在日時(システム日時)を取得 var dt = new Date(); // 「YYYY年MM月DD日 HH時mm分ss秒」の形でフォーマット var str = dt.getFullYear() + "年" + (dt.getMonth() + 1) + "月" + dt.getDate() + "日 " + dt.getHours() + "時" + dt.getMinutes() + "分" + dt.getSeconds() + "秒";
上記の変数 str を出力すると、次のように表示されます。
上記のような日本語表示だとあまり問題はありませんが、時間を「HH:mm:ss」のようにフォーマットする場合など、1桁の数字をそのまま表示すると不自然な印象がある場合は、0埋めの処理をします。
次のような判別式を使って、0埋め処理を行います。
// 1桁の数字を0埋めで2桁にする関数 var fm = function(prm) { // 数値prmを文字列として扱うための処理 prm += ""; // prmが1文字の場合は、左を 0 埋めする if (prm.length == 1) { prm = "0" + prm; } return prm; }; // 「2017年11月2日 4時5分9秒」の日時データを設定 var dt = new Date("2017,11,2 4:5:9"); // 「YYYY/MM/DD HH:mm:ss」の形でフォーマット var str = dt.getFullYear() + "/" + fm(dt.getMonth() + 1) + "/" + fm(dt.getDate()) + " " + fm(dt.getHours()) + ":" + fm(dt.getMinutes()) + ":" + fm(dt.getSeconds());
0埋め処理が必要な項目が複数あるので、0埋め処理前の数字を受け取って0埋め処理後の数字を返す関数「 fm 」を作って、0埋め処理が必要な項目毎に関数「 fm 」を呼び出しています。
上記の変数 str を出力すると、「2017年11月2日 4時5分9秒」が次のように表示されます。
Moment.jsは、日付と時間のフォーマットを行う際に便利に利用できる JavaScriptのライブラリです。
Moment.jsを使用する場合は、ライブラリ(jsファイル)を読み込む必要があります。
ライブラリは、Moment.jsのサイトからダウンロードした上で、jsファイルを格納するディレクトリに配置するか、CDNJS.comで配信されているライブラリのパスを指定するか、どちらかで読み込みます。
//ダウンロードする場合 <script src="moment.js"></script> //CDNJS経由でパスを指定する場合 <script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.19.1/moment-with-locales.js"></script>
jsファイルは、Moment.jsのサイトからダウンロードした上でそのアドレスを指定するか、Web上のjsファイルのURLを指定するか、どちらかの方法で読み込みます。
moment.jsを読み込んだ後は、Momentオブジェクトを使用して日時のフォーマット処理を行うことができます。
ボタンをクリックしてみて下さい。
ソースコードは次の通りです。
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.19.1/moment-with-locales.js"></script> <script type="text/javascript"> <!-- function dispDate() { var dt = moment(); document.getElementById("dat1").value += dt.format("YYYY/MM/DD"); document.getElementById("dat2").value += dt.format("YYYY年MM月DD日"); document.getElementById("dat3").value += dt.format("YYYY-MM-DD HH:mm"); document.getElementById("dat4").value += dt.format("YYYY-MM-DD HH:mm Z"); } //--> </script> <div style="background-color : #CCC; padding : 20px 10px 1px;"> <form> <input type="button" value="現在日時をフォーマット" onClick="dispDate()"> <input type="text" id="dat1" value=" YYYY/MM/DD : "> <input type="text" id="dat2" value=" YYYY年MM月DD日 : "> <input type="text" id="dat3" value=" YYYY-MM-DD HH:mm : "> <input type="text" id="dat4" value="YYYY-MM-DD HH:mm Z : "> </form> </div>
Dateオブジェクトの代わりにMomentオブジェクトを使用して、「var dt = moment();」として現在日時(システム日時)のデータを取得します。
そして、「dt.format(“YYYY/MM/DD”);」のような形でフォーマットを指定します。
YYYYやMMなど、日時フォーマットで使用するキーワードは次の通りです。
YYYY 4桁の年(ex.2017) YY 2桁の年(ex.17) Q 年の四半期(1~4) M 月(1~12) MM MMM 月名(Jan~December) MMMM D 日(1~31) DD Do 日(1st~31st) DDD 日(1~365) DDDD X UNIXタイムスタンプ(秒)9 x UNIXタイムスタンプ(ミリ秒) H 時(0~23) HH h 時(1~12) hh K 時(1~24) KK a 午前午後(am、pm) A m 分(0~59) mm s 秒(0~59) ss S ミリ秒(0~999) SS SSS Z 協定世界時との偏差(+-HH:mm、+-HHmm、Z) ZZ
プログラマハック
2019.12.04
今回は、「プログラマーの需要」について、現状と将来性も含めご紹介します。 プログラマーになろうとしたとき、「AI(人口知能)が普及しているから、プログラマーの仕事は将来なくなるかも」「需要が高いプログラマーになるためには […]
スキルアップ
2019.11.29
今回は、20代フリーターが正社員面接で採用されるための、面接攻略法をご紹介します。「正社員面接って何を聞かれるの?すごく緊張する」そう感じる20代フリーターは多くいます。正社員面接は、アルバイトでの面接と大きく異なります […]
スキルアップ
2019.11.27
エンジニアを目指してプログラミングスクールを検討中の方で「プログラミングスクールに通っても時間と費用を無駄にするのではないか」と不安のある方はいませんか? もちろん、プログラミングスクールに通いさえすれば誰でもエンジニア […]
プログラマハック
2019.11.22
今回は、未経験でプログラマ転職を成功させるためのおすすめポイントについて、ご紹介します。「手に職を付けたいからプログラマになりたい」と思った時、「未経験で本当にプログラマになれるの?」「プログラマになるためには、どうした […]
スキルアップ
2019.11.20
ITエンジニアの職種別平均年収とITエンジニアが年収を上げる方法を紹介します! IT業界で働く人々は高収入のイメージがありますが、実際はどうなんでしょうか。 今回は、ITエンジニアの職種別の平均年収とITエンジニアが年収 […]
スキルアップ
2019.11.15
「フリーターから正社員になりたい!」と思って、懸命に就職活動しているのに、中々内定がもらえず、「フリーターの就職は難しいな」と悩んでいませんか?今回は、そんなフリーターの方が、自分の長所やフリーター経験を活かして、いち早 […]
INTERNOUS,inc. All rights reserved.