今回はGoogle App Scriptのプログラム上で「日付型」「文字列型」「数値型」を変換する方法を紹介します。
型をしっかりと認識してコードを書いていかないと、予測しないバグの原因にもなりますので、それらを未然に防ぐためにもご参加になればと思います!
let Date_String = Utilities.formatDate(new Date(), "JST", "yyyy/MM/dd HH:mm:ss");
Utilities
クラスのformatDate
関数を使用して日付を文字列変換する際の整形を行なっています。
formatDate
関数の第一引数であるnew Date()
はこのコードが実行された時の時刻を日付型で返却します。つまり、formatDate
関数に現在の時刻を入力しています。
formatDate
関数の第二引数である"JST"
はこのタイムゾーンを「日本」でしています。日本以外のタイムゾーンを指定する文字列については下記を参照してください。
formatDate
関数の第三引数である"yyyy/MM/dd HH:mm:ss"
は文字列として変換される時のフォーマットを指定しています。「yyyy」が「年」、「MM」が「月」、「dd」が「日付」を表しており、時間に関しても「HH」が「時」、「mm」が「分」、「ss」が「秒」を表しています。
let Day_String = "2024/5/1 12:12:12";
let Day_Date = new Date(Day_Data)
日付を表現された文字列であれば、new Date()
を使用すれば日付型に変換することができます。
これを活用すれば、日付の情報を失わないようにしながら、任意の文字列の日付データから別の形の日付文字列データへ変換することが可能となります。
let text_String = Utilities.formatString("%5s","abc");
Utilities
クラスのformatString
関数を使用して任意の文字列を決まった形に整形しています。
formatString
関数の第一引数である"%5s"
はフォーマット指定子というものです。今回の例では5文字分の枠でabcという文字を右詰めで表示するものになります。フォーマット指定しの一覧の抜粋は下記になります。
フォーマット指定子 | 意味 |
%s | 文字列 |
%d | 10進数数値 |
%i | 整数 |
%f | 浮動小数点 |
%j | JSON形式 |
formatString
関数の第二引数である"abc"
は変換対象になるオブジェクトです。ここでいうオブジェクトとは「整数型(int)」や「文字列型(string)」「浮動小数点(float)」などを区別せずオブジェクトという1つの概念で扱う意味になります。
そのため、第二引数では文字列型以外にも整数型の数値であったり、その他の型を持つデータも入力することが可能になります。
今回はGoogle Apps Scriptで日付・文字列・数値を変換する方法を紹介しました。
プログラムを書いていく上でバグを減らすために重要な概念である型。Google Apps ScirptではJavaScriptのエンジンを使用しています。JavaScriptは型の定義が甘い点がありますので、コードを書く人がしっかりと認識を持って変数に型を与えましょう。
最後まで読んでくれてありがとうございました!!
よかったらお気に入り登録をお願いします!!!!