date datetime and full date
の異なるフォームは、シナリオに応じて得るのですか?場合日にはどのように時間を取得するだけで、日付のみと完全な日付は、JavaScriptで
- 1その後、私はケースの日には
22:31
- のように示さなければならない
less than 24 Hr old
最新であるし、私はケースの日には15 Feb.
- のように示さなければならない例えば
february
のために同じ月であるが、24 hr
より古いです1ヶ月よりも古い場合は、15 Feb 17
のように表示する必要があります。
これまで2つの目的のためにJavaScript関数を作成しました。
function getLocalizeDateTime(dateString,format) {
if(dateString==null || dateString==undefined || dateString==""){
return "";
}
var dateTime = dateString.trim().split(" ");
var dateOnly = dateTime[0];
var timeOnly = dateTime[1];
timeOnlyOfDate = timeOnly;
var temp = dateOnly + "T" + timeOnly+"Z";
var utc_date =new Date(temp);
currentDateStr = dateString;
//var offset = new Date().getTimezoneOffset();
//utc_date.setMinutes(utc_date.getMinutes() - offset);
if(format!=undefined && format!=null)
return date2str(utc_date,format);
return date.toString();
}
function date2str(x, y) {
var z = {
YR: x.getFullYear(),
M: x.getMonth() + 1,
d: x.getDate(),
h: x.getHours(),
m: x.getMinutes(),
s: x.getSeconds()
};
// Here return 22:32 if date is less than 24 hr old.
// return 24 feb as currentmonth is feb.
// return 24 feb 17 in case current date is march or greater.
y = y.replace(/(M+|d+|h+|m+|s+)/g, function(v) {
return ((v.length > 1 ? "0" : "") + eval('z.' + v.slice(-1))).slice(-2)
});
return y.replace(/(y+)/g, function(v) {
return x.getFullYear().toString().slice(-v.length)
});
}
しかし、これらの機能は、それが02-24-2017 13:16
を返す日付"2017-02-24 07:46:38"
と形式MM-dd-yyyy hh:mm"
のために例えばのためのフォーマットで全体の日付を返します。上記の3つのビジネスチェックをどのように捉えるか。
ライブラリのフォーマットがたくさんある –
[momentjs](https://momentjs.com)を見てみましょう。 [* fecha.js *](https://github.com/taylorhakes/fecha)は簡潔であり、解析と書式設定を行います。 – RobG
参照:http://stackoverflow.com/help/someone-answers – c0der