jQuery、ASP.NET、ajax で使うマイクロソフト JSON 日付のフォーマット
マイクロソフト JSON 日付のフォーマット方法
この形式の日付をフォーマットするには、以下の方法があります。
JavaScript の Date オブジェクトを使用する
// マイクロソフト JSON 日付を取得
var microsoftJsonDate = "\/Date(1234567890)\/";
// Date オブジェクトに変換
var date = new Date(parseInt(microsoftJsonDate.substr(6, microsoftJsonDate.length - 9)));
// フォーマット
var formattedDate = date.toLocaleDateString();
// 出力
console.log(formattedDate); // "2023-11-14"
Moment.js ライブラリを使用する
// Moment.js ライブラリをインストール
// npm install moment
// Moment オブジェクトに変換
var moment = require('moment')(microsoftJsonDate);
// フォーマット
var formattedDate = moment.format("YYYY-MM-DD");
// 出力
console.log(formattedDate); // "2023-11-14"
ASP.NET の DateTime 型を使用する
// マイクロソフト JSON 日付を取得
string microsoftJsonDate = "\/Date(1234567890)\/";
// DateTime 型に変換
DateTime date = DateTime.FromJavaScriptTicks(long.Parse(microsoftJsonDate.Substring(6, microsoftJsonDate.Length - 9)));
// フォーマット
string formattedDate = date.ToString("yyyy-MM-dd");
// 出力
Console.WriteLine(formattedDate); // "2023-11-14"
jQuery の $.ajax() メソッドを使用する
// jQuery ライブラリをインストール
// npm install jquery
$.ajax({
url: "api/getdate",
dataType: "json",
success: function(data) {
// マイクロソフト JSON 日付を取得
var microsoftJsonDate = data.date;
// Date オブジェクトに変換
var date = new Date(parseInt(microsoftJsonDate.substr(6, microsoftJsonDate.length - 9)));
// フォーマット
var formattedDate = date.toLocaleDateString();
// 出力
$("#output").html(formattedDate);
}
});
上記の例では、いずれの方法もマイクロソフト JSON 日付を "yyyy-MM-dd" 形式にフォーマットしています。必要に応じて、フォーマットパターンを変更して、他の形式の日付文字列を生成することができます。
// マイクロソフト JSON 日付を取得
var microsoftJsonDate = "\/Date(1234567890)\/";
// Date オブジェクトに変換
var date = new Date(parseInt(microsoftJsonDate.substr(6, microsoftJsonDate.length - 9)));
// フォーマット
var formattedDate = date.toLocaleDateString();
// 出力
console.log(formattedDate); // "2023-11-14"
Moment.js
// Moment.js ライブラリをインストール
// npm install moment
// Moment オブジェクトに変換
var moment = require('moment')(microsoftJsonDate);
// フォーマット
var formattedDate = moment.format("YYYY-MM-DD");
// 出力
console.log(formattedDate); // "2023-11-14"
ASP.NET
// マイクロソフト JSON 日付を取得
string microsoftJsonDate = "\/Date(1234567890)\/";
// DateTime 型に変換
DateTime date = DateTime.FromJavaScriptTicks(long.Parse(microsoftJsonDate.Substring(6, microsoftJsonDate.Length - 9)));
// フォーマット
string formattedDate = date.ToString("yyyy-MM-dd");
// 出力
Console.WriteLine(formattedDate); // "2023-11-14"
jQuery
// jQuery ライブラリをインストール
// npm install jquery
$.ajax({
url: "api/getdate",
dataType: "json",
success: function(data) {
// マイクロソフト JSON 日付を取得
var microsoftJsonDate = data.date;
// Date オブジェクトに変換
var date = new Date(parseInt(microsoftJsonDate.substr(6, microsoftJsonDate.length - 9)));
// フォーマット
var formattedDate = date.toLocaleDateString();
// 出力
$("#output").html(formattedDate);
}
});
補足
- 上記のコードは、基本的なサンプルコードです。実際の使用例では、必要に応じてコードを修正する必要があります。
- マイクロソフト JSON 日付は、さまざまな方法でフォーマットすることができます。上記のコードは、その方法のほんの一例です。
マイクロソフト JSON 日付をフォーマットする他の方法
JSON.parse() メソッドを使用する
// マイクロソフト JSON 日付を取得
var microsoftJsonDate = "\/Date(1234567890)\/";
// JSON オブジェクトに変換
var dateObject = JSON.parse(microsoftJsonDate);
// Date オブジェクトに変換
var date = new Date(dateObject);
// フォーマット
var formattedDate = date.toLocaleDateString();
// 出力
console.log(formattedDate); // "2023-11-14"
Intl.DateTimeFormat オブジェクトを使用する
// マイクロソフト JSON 日付を取得
var microsoftJsonDate = "\/Date(1234567890)\/";
// Date オブジェクトに変換
var date = new Date(parseInt(microsoftJsonDate.substr(6, microsoftJsonDate.length - 9)));
// Intl.DateTimeFormat オブジェクトを作成
var dateTimeFormat = new Intl.DateTimeFormat("ja-JP");
// フォーマット
var formattedDate = dateTimeFormat.format(date);
// 出力
console.log(formattedDate); // "2023年11月14日"
Lodash ライブラリを使用する
// Lodash ライブラリをインストール
// npm install lodash
// マイクロソフト JSON 日付を取得
var microsoftJsonDate = "\/Date(1234567890)\/";
// Date オブジェクトに変換
var date = new Date(parseInt(microsoftJsonDate.substr(6, microsoftJsonDate.length - 9)));
// Lodash の `_.toDateTime` 関数を使用してフォーマット
var formattedDate = _.toDateTime(date, "yyyy-MM-dd");
// 出力
console.log(formattedDate); // "2023-11-14"
これらの方法は、いずれもマイクロソフト JSON 日付をさまざまな形式にフォーマットすることができます。必要に応じて、最適な方法を選択してください。
jquery asp.net ajax