以下のコードを実行し、スプレッドシートに日付列がある場合、クライアント ページの日付形式は次のようになります: Thu May 23 2013 00:00:00 GMT-0400 (EDT)
日付を次のようにフォーマットしたい: 2013 年 5 月 23 日
行を変更することでそれができると思います
<td><?= data[i][j] ?></td>
に
<td><?= Utilities.formatDate(new Date(data[i][j]), "GMT-5", "MMM dd, yyyy")data[i][j] ?></td>
...しかし問題は、配列内のすべてのデータが日付オブジェクトではないことです。配列内のオブジェクトが特定の型であるかどうかを確認するにはどうすればよいですか? formatDate 関数を適用する前に、現在のオブジェクトが日付オブジェクトかどうかを判断したいと思います。
Code.gs
function doGet() {
return HtmlService
.createTemplateFromFile('index')
.evaluate();
}
function getData() {
return SpreadsheetApp
.openById('123abc')
.getDataRange()
.getValues();
}
index.html
<? var data = getData(); ?>
<table>
<? for (var i = 0; i < data.length; i++) { ?>
<tr>
<? for (var j = 0; j < data[i].length; j++) { ?>
<td><?= data[i][j] ?></td>
<? } ?>
</tr>
<? } ?>
</table>