JavaScript
 Computer >> コンピューター >  >> プログラミング >> JavaScript

【JavaScript】MySQLのDATETIME値をJSON形式に変換する方法を解説

MySQL DATETIME値をJSON形式に変換する基本手法

MySQLのDATETIME値をJavaScriptでJSON形式に変換するには、JSON.stringify()メソッドを使用します。手順としては、まずDateオブジェクトとして日時を取得し、年・月・日・時・分・秒をそれぞれ取り出してオブジェクトにまとめ、最後にJSON文字列へ変換します。

サンプルコード

以下は、MySQLのDATETIME値をJSON形式に変換するJavaScriptのコード例です。

<script>
var mySQLDateTime = new Date("Fri Sep 06 2019 22:54:48");
var yearValue = mySQLDateTime.getFullYear();
var dateValue = mySQLDateTime.getDate();
var monthValue = mySQLDateTime.getMonth();
var hour = mySQLDateTime.getHours();
var minutes = mySQLDateTime.getMinutes();
var second = mySQLDateTime.getSeconds();
jsonObject = {"year": yearValue, "month": monthValue, "DateValue": dateValue, "Hour": hour, "Minutes": minutes, "Second": second};
var dateJsonObject = JSON.stringify(jsonObject);
document.write(dateJsonObject);
</script>

実行結果

上記のコードを実行すると、以下のようなJSON形式の出力が得られます。

{"year":2019,"month":8,"DateValue":6,"Hour":22,"Minutes":54,"Second":48}

注意点:月の値は0始まり

実行結果を見ると、9月なのに「month: 8」と表示されています。これはJavaScriptのgetMonth()メソッドが0から始まるインデックス(1月=0、12月=11)を返す仕様になっているためです。人間が読みやすい形式にする場合は、以下のように1を加算しましょう。

var monthValue = mySQLDateTime.getMonth() + 1;

JSON.stringify()の役割

JSON.stringify()は、JavaScriptのオブジェクトをJSON形式の文字列に変換するためのメソッドです。日時データをAPIで送信したり、localStorageに保存したりする際に広く利用されており、データの受け渡しをシンプルに行えるのが大きなメリットです。

  1. JSONテキストをJavaScriptのJSONオブジェクトに変換する方法を解説

    JavaScriptでは、JSON.parse()メソッドを使用することで、JSON形式のテキスト文字列をJavaScriptオブジェクトへと変換できます。このメソッドは、APIから取得したデータやサーバーとの通信で受け取ったJSON文字列を、プログラム内で扱いやすいオブジェクトにパースする際に非常に重要な役割を果たします。 以下は、JSONテキストをJavaScriptオブジェクトに変換する具体的なコード例です。 サンプルコード <!DOCTYPE html> <html lang=ja> <head> <meta charset=UTF-8 /&

  2. Pythonで日付をJSON形式(ISO 8601)に変換する方法を解説

    実は、日付に対する標準的なJSON形式は存在しません。ただし、JavaScriptには標準の日付形式があり、人間が読み取りやすく、文字列として正しくソートでき、小数秒(ミリ秒以下の精度で時系列を復元するのに役立ちます)を含み、さらにISO 8601規格に準拠しているという特徴があります。Pythonの日付をこのJavaScriptの日付形式に変換するには、strftime関数を使用します。その後、この日付を必要とするクライアント側でデシリアライズ(解析)すればよいのです。なお、Python 3でISO 8601形式の日付文字列を取得したい場合は、isoformat関数を使うだけで実現できます。