質問

いJavaScriptの new Date() 機能はスマート受け入れ日数ンポーネント。

Xmas95 = new Date("25 Dec, 1995 23:15:00")
Xmas95 = new Date("2009 06 12,12:52:39")
Xmas95 = new Date("20 09 2006,12:52:39")

を見つけられなかった文書でもどこでも示すべての有効なstring形式を呼びながら new Date() 機能です。

この変換する文字列。していえば反対側が変換した日付オブジェクトを文字列で、これまで私の印象でJavaScriptない内蔵のAPIへのフォーマット日付オブジェクトを文字列になります。

編集部注: 以下のようなアプローチの意義は、askerの試みたが、特定のブラウザな ない 仕事を一; の答えをこのページ あ実際のソリューション。

今日の中で弾かせていただきましたの toString() 方法は、dateオブジェクトは、驚くことで、目的のフォーマット日付を文字列です。

var d1 = new Date();
d1.toString('yyyy-MM-dd');       //Returns "2009-06-29" in Internet Explorer, but not Firefox or Chrome
d1.toString('dddd, MMMM ,yyyy')  //Returns "Monday, June 29,2009" in Internet Explorer, but not Firefox or Chrome

こちらも見られませんでしたが何らかの文書はすべての方までのフォーマット日付オブジェクトを文字列になります。

この文書のリストの書式指示子によ Date() オブジェクト?

役に立ちましたか?

解決

I love 10つの形式の日時にJavaScriptを使用作業日.

基本的には、次のつの方法として結合し、文字列のために自分自身

getDate() // Returns the date
getMonth() // Returns the month
getFullYear() // Returns the year

例:

var d = new Date();
var curr_date = d.getDate();
var curr_month = d.getMonth() + 1; //Months are zero based
var curr_year = d.getFullYear();
console.log(curr_date + "-" + curr_month + "-" + curr_year);

他のヒント

Moment.js

(軽量)※JavaScript日図書館のための構文解析操作、フォーマットです。

var a = moment([2010, 1, 14, 15, 25, 50, 125]);
a.format("dddd, MMMM Do YYYY, h:mm:ss a"); // "Sunday, February 14th 2010, 3:25:50 pm"
a.format("ddd, hA");                       // "Sun, 3PM"

(*)軽量意味9.3KB minified+gzippedの可能な最小アクセス-コントロールにより、月2014)

を既に利用中のお客さま jQuery UI お客様のプロジェクトを使用できるdatepicker"を持つ方のためのフォーマットおdateオブジェクト:

$.datepicker.formatDate('yy-mm-dd', new Date(2007, 1 - 1, 26));

しかし、datepicker"を持つだけの形式の写真できない形式です。

してい jQuery UI datepicker"を持つformatDate, の例です。

この文書のリストの書式指示子によ Date() オブジェクト?

私がここに今日したのは、何がきっかけだったとの回答にはこの簡単な質問です。True、多くの図書館にある日付の操作が可能です。一部のものを使うのがポイントのようです。がんの疑問がおりました。

AFAIK、純JavaScriptをサポートしていない書式指示子 方を明確にし、それを実現するためいて.な支援方法のためのフォーマットや時間など、 .toLocaleDateString(), .toLocaleTimeString(), は、 .toUTCString().

Date オブジェクト参照を使ってい多くの w3schools.com webサイト早Google検索 を明らかに多くのことがより良いニーズに対応).

また、 Dateオブジェクトのプロパティ 詳細な情報を記述する項目へのリンク prototype, を展開する一方法を延長することができます日付オブジェクトのカスタム。してい 一部の議論 JavaScriptの地域にいかどうかについてはこれがベストプラクティス、およびんを主張またはする技術を開発しているので、指摘している。

カスタムフォーマット機能:

固定式では、単純な機能の仕事です。以下の例で生成し、国際形式YYYY-MM-DD:

function dateToYMD(date) {
    var d = date.getDate();
    var m = date.getMonth() + 1;
    var y = date.getFullYear();
    return '' + y + '-' + (m<=9 ? '0' + m : m) + '-' + (d <= 9 ? '0' + d : d);
}

注意:しかし、通常は良いアイデアを延長するJavascriptの標準ライブラリ(例えば追加によりこの機能を試す

より高度な機能を生み出すことも十分にありう設定可能出力に基づく形式のパラメータとします。あのカップルなどが代表的な例としてあげられまでもが、このページです。

場合は書フォーマット機能が長すぎる場合は、たくさんあり図書館の周辺のなのです。その他の回答がすでに列挙します。が増加依存関係のもとでのカウンターです。

標準ECMAScriptフォーマット機能:

以降、最近のバージョンのECMAscript、 Date クラスはいくつかのフォーマット機能:

toDateString:実装依存のみを表示します。

http://www.ecma-international.org/ecma-262/7.0/index.html#sec-date.prototype.todatestring

new Date().toDateString(); // e.g. "Fri Nov 11 2016"

toISOString:示ISO8601。

http://www.ecma-international.org/ecma-262/7.0/index.html#sec-date.prototype.toisostring

new Date().toISOString(); // e.g. "2016-11-21T08:00:00.000Z"

toJSON:StringifierのためのJSON.

http://www.ecma-international.org/ecma-262/7.0/index.html#sec-date.prototype.tojson

new Date().toJSON(); // e.g. "2016-11-21T08:00:00.000Z"

toLocaleDateString:実装に依存するので、日のロケール形式です。

http://www.ecma-international.org/ecma-262/7.0/index.html#sec-date.prototype.tolocaledatestring

new Date().toLocaleDateString(); // e.g. "21/11/2016"

toLocaleString:実装によって異なりますが、日時にロケール形式です。

http://www.ecma-international.org/ecma-262/7.0/index.html#sec-date.prototype.tolocalestring

new Date().toLocaleString(); // e.g. "21/11/2016, 08:00:00 AM"

toLocaleTimeString:実装によって異なりますが、時間のロケール形式です。

http://www.ecma-international.org/ecma-262/7.0/index.html#sec-date.prototype.tolocaletimestring

new Date().toLocaleTimeString(); // e.g. "08:00:00 AM"

toString:汎用toStringのための日です。

http://www.ecma-international.org/ecma-262/7.0/index.html#sec-date.prototype.tostring

new Date().toString(); // e.g. "Fri Nov 11 2016 08:00:00 GMT+0100 (W. Europe Standard Time)"

注意:を生成することができるカスタム出力のフォーマット機能:

new Date().toISOString().slice(0,10); // By @Image72, return YYYY-MM-DD

その答え

ありません"ユニバーサル"ドキュメンテーションがjavascriptに対応;各ブラウザがjavascriptを本当に実装されます。しかし、そこでは、最近のブラウザが従うことになるのEMCAScript標準は、ECMAScript標準の文字列が海外のご家庭サイズのターキー、修正の実施をISO8601定義で設定します。

このほかに、次の標準の設定による IETF そのブラウザがフォロなどの定義のタイムスタンプのRFC2822.実際の文書の参考文献リストを行います。

このことから期待できますので基本的な機能が、どのよう"べき"とすることは本質的に何を""です。私た少し深いとこprocedurallyが表示されているとおりだといった人間が実際に行かという答え(Scott goofballLogic、pellerわる労働者とコルホーズの女性像とオる一部の人々は、何が起きているかを分子を作成する場合は、Dateオブジェクトです。


の答え

この文書のリストの書式指示子の日付()オブジェクト?


回答の際には、一般的に見てもためには、その答えを把握しておく必要がありjavascriptがない物語これは実際の実装ECMAScript、以下のECMAScript基準(ただし、javascriptのものが付基準;EMCAScript基準の構築を早期に実施LiveScript/とになります。現在のECMAScript基準5.1(2011);当時のことを質問したい月'09)、3(4放棄されたも5発売された直後にポストに取り組みを2009年末までにこの概要の一問題何標準javascriptの実装では、では必ずしも捕捉し得ない何をすることが求められています、でその実施の基準b)ないすべての実装の基準ピューリタン"、及び"機能を理解した上で利用してくださいと同期して、新たなスタンダードとなりうるd)実装は常に仕事の進捗

基本的に、javascript、ついに誘導体(javascriptに特有のブラウザ)の実施(javascript)。GoogleのV8は、例えば、実装しECMAScript5.0が、インターネットエクJScriptな場合には、ECMAScript標準的なインターネットExplorer9では適合しECMAScript5.0.

時の単一の引数が渡された新しい日付()で鋳この機能を試作:

new Date(value)

が二つ以上の引数が渡される新しい日付()で鋳この機能を試作:

new Date (year, month [, date [, hours [, minutes [, seconds [, ms ] ] ] ] ] )


これらの機能のあるべき姿を、おなじみがないとすぐにお答えや定量化の受け入れ"日付フォーマット"が必要とされます。き文字列を新しい日までの試作(注しているところという言葉を用い 試作 緩やか;のバージョンが個々の能なものであったり、あるいは一部条件式の単一の関数)のための 新日(値) と文字列の引数としての"value"パラメータとします。この機能が最初であるかどうかをチェック数または文字列です。ドキュメンテーションにこの機能で、できるだけ早く送ってくださ

http://www.ecma-international.org/ecma-262/5.1/#sec-15.9.3.2

このことから、ま猟の文字列のフォーマット可新日(価値)には、その方法。parse(string).ドキュメンテーションにこの方法で、できるだけ早く送ってくださ

http://www.ecma-international.org/ecma-262/5.1/#sec-15.9.4.2

しめることができると推測される日が予想される変ISO8601形式の拡張って指定された。

http://www.ecma-international.org/ecma-262/5.1/#sec-15.9.1.15

しかし、認識できるから体験するjavascriptのDateオブジェクトを受け付けその他のファイル(強制の存在によってこの問題は、これは大丈夫でECMAScriptでは実装固有のものです。しかし、まだお答えできませんのでどの文書の利用可能なフォーマットなどのフォーマットは実際に可能です。私たちが発展していくために見てGoogleのjavascriptの実装では、V8;ごんがこの"ベスト"javascriptエンジン(どうすることができる、"最高の"もの")を想定することはできないフォーマット可V8を表す全てのフォーマットはどのように利用いと思うので、いいフォローを行い現代の期待に応えます。

GoogleのV8、date.js,DateConstructor

https://code.google.com/p/v8/source/browse/trunk/src/date.js?r=18400#141

みDateConstructor機能を抽出し、DateParse機能ただし、"年度"は、実際の年のみの参考に"年"パラメータとします。

GoogleのV8、date.js,DateParse

https://code.google.com/p/v8/source/browse/trunk/src/date.js?r=18400#270

これ%DateParseString、実際にインターフェース機能を参照のためにはC++の機能です。をいう以下のコード:

GoogleのV8、runtime.cc,%DateParseString

https://code.google.com/p/v8/source/browse/trunk/src/runtime.cc?r=18400#9559

関数の呼び出したい人はこの機能はDateParser::Parse();を無視する論理は周りの方に機能を呼び出し、これだけチェックに準拠エンコーディングタイプ(ASCIIやUC16).DateParser::構文の定義はこちら

GoogleのV8、dateparser-inl.h,DateParser::解析

https://code.google.com/p/v8/source/browse/trunk/src/dateparser-inl.h?r=18400#36

この機能が実際の定義はどのような形態で受けた。基本的に、チェックのためのEMCAScript5.0ISO8601標準でない場合の基準に準拠し、その試みの構築を基盤として構築され、多くのシームレットです。重要なポイントに基づくコメント:

  1. 言葉の数が未知のパーサは無視されます。
  2. 頭文字は無視されます。
  3. 符号なしの数字の後に":"として解釈される"時間のコンポーネントが.
  4. 符号なしの数字の後に"."として解釈される"時間のコンポーネントが、守しなければならないよミリ秒です。
  5. 署名の数を時間時間分(例えば+5:15+0515)として解釈されるtimezone.
  6. を宣言する場合には、時針と分、どちらかをお使いいただけます"hh:mm"または"hhmm".
  7. 言葉を示すタイムゾーンとして解釈されるタイムゾーンになります。
  8. その他の数字として解釈される"日。
  9. すべての単語から始まる最初の桁の月として解釈されます。
  10. を定義しておくことができま分と時間との間でいずれかのフォーマット:"hh:mm"または"hhmm".
  11. 記号のように"+","-"駆")"は、加工しています。
  12. 項目に一致する複数のフォーマット(例えば1970-01-01)として処理されているのはむしろ平洋沖地震による当社への影響にEMCAScript5.0ISO8601文字列になります。

こうなっていただけるように基本的な考え方に何を期待でき渡す文字列をDateオブジェクトです。きのさらなる拡大する以下の仕様とMozillaポイントのMozillaデベロッパー-ネットワーク対応のIETF RFC2822タイムスタンプ):

http://tools.ietf.org/html/rfc2822#page-14

Microsoftのデベロッパー-ネットワークまた記載を追加標準のDateオブジェクト:ECMA-402、ECMAScript国際化APIの仕様であることを明らかにECMAScript5.1標準(将来)ることで、できるだけ早く送ってくださ

http://www.ecma-international.org/ecma-402/1.0/

る場合には、日本は援助を見ることはありません"ドキュメンテーション"が普遍的にはすべての実装のjavascriptが、まだまだ十分な文書化しみながらおくつろぎいただけ合理的な意味での文字列が含まれている場合、Dateオブジェクトです。非常にロードされた質問ときのことを考えれば、ちゃん?"P

参考文献

http://www.ecma-international.org/ecma-262/5.1/#sec-15.9.3.2

http://www.ecma-international.org/ecma-262/5.1/#sec-15.9.4.2

http://www.ecma-international.org/ecma-262/5.1/#sec-15.9.1.15

http://tools.ietf.org/html/rfc2822#page-14

http://www.ecma-international.org/ecma-402/1.0/

https://code.google.com/p/v8/source/browse/trunk/src/date.js?r=18400#141

https://code.google.com/p/v8/source/browse/trunk/src/date.js?r=18400#270

https://code.google.com/p/v8/source/browse/trunk/src/runtime.cc?r=18400#9559

https://code.google.com/p/v8/source/browse/trunk/src/dateparser-inl.h?r=18400#36

資源

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date

http://msdn.microsoft.com/en-us/library/ff743760(v=vs94).aspx

必ず精算 Datejs 処理時の写真です。でも、もれなく記録されていますので、 toString機能.

編集:タイラーザ-フォーサイス-カンパニーポイントは、そのdatejsは時代遅れです。使っても私の現在のプロジェクトおよびんせいかを知っておく必要があることを考える。

できるだけ拡大を図 Date オブジェクトを新しい format 方法として指摘されたように meizz, 以下のコードされる。や こちらは jsfiddle.

Date.prototype.format = function(format) //author: meizz
{
  var o = {
    "M+" : this.getMonth()+1, //month
    "d+" : this.getDate(),    //day
    "h+" : this.getHours(),   //hour
    "m+" : this.getMinutes(), //minute
    "s+" : this.getSeconds(), //second
    "q+" : Math.floor((this.getMonth()+3)/3),  //quarter
    "S" : this.getMilliseconds() //millisecond
  }

  if(/(y+)/.test(format)) format=format.replace(RegExp.$1,
    (this.getFullYear()+"").substr(4 - RegExp.$1.length));
  for(var k in o)if(new RegExp("("+ k +")").test(format))
    format = format.replace(RegExp.$1,
      RegExp.$1.length==1 ? o[k] :
        ("00"+ o[k]).substr((""+ o[k]).length));
  return format;
}

alert(new Date().format("yyyy-MM-dd"));
alert(new Date("january 12 2008 11:12:30").format("yyyy-MM-dd h:mm:ss"));

の機能を引用すい標準的なJavascriptなが携帯全体のブラウザで行ってはならないのかと思います。の ECMAScriptスペック3 葉の解析および出力形式の機能のJavascriptの実装です。 ECMAScript5 追加のサブセットのiso8601形式です。このtoString()関数を大きがイノベーションワンのブラウザMozilla?)

複数の図書館提供のルーチンをparameterizeが、この豊富なローカライズをサポート.確認することもできますの方法 道場があります。ます。ロケール.

明けまして御目出とう御座います非常に簡単なフォーマッタでカット/n/pastable(更新されneater版)

function DateFmt(fstr) {
  this.formatString = fstr

  var mthNames = ["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];
  var dayNames = ["Sun","Mon","Tue","Wed","Thu","Fri","Sat"];
  var zeroPad = function(number) {
     return ("0"+number).substr(-2,2);
  }

  var dateMarkers = {
    d:['getDate',function(v) { return zeroPad(v)}],
    m:['getMonth',function(v) { return zeroPad(v+1)}],
    n:['getMonth',function(v) { return mthNames[v]; }],
    w:['getDay',function(v) { return dayNames[v]; }],
    y:['getFullYear'],
    H:['getHours',function(v) { return zeroPad(v)}],
    M:['getMinutes',function(v) { return zeroPad(v)}],
    S:['getSeconds',function(v) { return zeroPad(v)}],
    i:['toISOString']
  };

  this.format = function(date) {
    var dateTxt = this.formatString.replace(/%(.)/g, function(m, p) {
      var rv = date[(dateMarkers[p])[0]]()

      if ( dateMarkers[p][1] != null ) rv = dateMarkers[p][1](rv)

      return rv

    });

    return dateTxt
  }

}

fmt = new DateFmt("%w %d:%n:%y - %H:%M:%S  %i")
v = fmt.format(new Date())

http://snipplr.com/view/66968.82825/

枠組みの無限のな

var d = (new Date()+'').split(' ');
// ["Tue", "Sep", "03", "2013", "21:54:52", "GMT-0500", "(Central", "Daylight", "Time)"]

[d[3], d[1], d[2], d[4]].join(' ');
// "2013 Sep 03 21:58:03"

DateJSう表示がされています。 このようにlib(JavaScriptの日付フォーマット) 私が好きだからこその120行います。

を有した複数のオプションの提供その他の回答、書こうと決めて自分で簡単に解決するその他の場合にも便利です。

/**
* Format date as a string
* @param date - a date object (usually "new Date();")
* @param format - a string format, eg. "DD-MM-YYYY"
*/
function dateFormat(date, format) {
    // Calculate date parts and replace instances in format string accordingly
    format = format.replace("DD", (date.getDate() < 10 ? '0' : '') + date.getDate()); // Pad with '0' if needed
    format = format.replace("MM", (date.getMonth() < 9 ? '0' : '') + (date.getMonth() + 1)); // Months are zero-based
    format = format.replace("YYYY", date.getFullYear());
    return format;
}

使用例:

console.log("The date is: " + dateFormat(new Date(), "DD/MM/YYYY"));

この機能を使用しています。その結果をyyyy-mm-dd hh:mm:ss.nnn.

function date_and_time() {
    var date = new Date();
    //zero-pad a single zero if needed
    var zp = function (val){
        return (val <= 9 ? '0' + val : '' + val);
    }

    //zero-pad up to two zeroes if needed
    var zp2 = function(val){
        return val <= 99? (val <=9? '00' + val : '0' + val) : ('' + val ) ;
    }

    var d = date.getDate();
    var m = date.getMonth() + 1;
    var y = date.getFullYear();
    var h = date.getHours();
    var min = date.getMinutes();
    var s = date.getSeconds();
    var ms = date.getMilliseconds();
    return '' + y + '-' + zp(m) + '-' + zp(d) + ' ' + zp(h) + ':' + zp(min) + ':' + zp(s) + '.' + zp2(ms);
}

簡便利なこの変更の日付オブジェクトより小さいこと、図書館で、簡単に拡張可能をサポートされるフォーマット:

注意:

コード

Date.prototype.format = function(format) {
    // set default format if function argument not provided
    format = format || 'YYYY-MM-DD hh:mm';

    var zeropad = function(number, length) {
            number = number.toString();
            length = length || 2;
            while(number.length < length)
                number = '0' + number;
            return number;
        },
        // here you can define your formats
        formats = {
            YYYY: this.getFullYear(),
            MM: zeropad(this.getMonth() + 1),
            DD: zeropad(this.getDate()),
            hh: zeropad(this.getHours()),
            mm: zeropad(this.getMinutes())
        },
        pattern = '(' + Object.keys(formats).join(')|(') + ')';

    return format.replace(new RegExp(pattern, 'g'), function(match) {
        return formats[match];
    });
};

使用

var now = new Date;
console.log(now.format());
// outputs: 2015-02-09 11:47
var yesterday = new Date('2015-02-08');
console.log(yesterday.format('hh:mm YYYY/MM/DD'));
// outputs: 00:00 2015/02/08

できgongzhitaaoへの回答-この取扱AM/PM

 Date.prototype.format = function (format) //author: meizz
{
    var hours = this.getHours();
    var ttime = "AM";
    if(format.indexOf("t") > -1 && hours > 12)
    {
        hours = hours - 12;
        ttime = "PM";
     }

var o = {
    "M+": this.getMonth() + 1, //month
    "d+": this.getDate(),    //day
    "h+": hours,   //hour
    "m+": this.getMinutes(), //minute
    "s+": this.getSeconds(), //second
    "q+": Math.floor((this.getMonth() + 3) / 3),  //quarter
    "S": this.getMilliseconds(), //millisecond,
    "t+": ttime
}

if (/(y+)/.test(format)) format = format.replace(RegExp.$1,
  (this.getFullYear() + "").substr(4 - RegExp.$1.length));
for (var k in o) if (new RegExp("(" + k + ")").test(format))
    format = format.replace(RegExp.$1,
      RegExp.$1.length == 1 ? o[k] :
        ("00" + o[k]).substr(("" + o[k]).length));
return format;
}

プログラムとなってく終文書の有効日付フォーマットで書いた自分の試験に対応して様々なブラウザを推奨いたします。

http://blarg.co.uk/blog/javascript-date-formats

私の結果を締結しては、以下のフォーマットでは有効なすべてのブラウザでその試験例をご利用日"9月2013"):

【通年]/[月]/[日数] ヶ月でなければならないと規定されての無に関わらず先頭のゼロまたは月の名の長-短にな形での日数ではなく大手ゼロになります。

  • 2013/08/09
  • 2013/08/9
  • 2013/8/09
  • 2013/8/9
  • 2013年/月/09
  • 2013年/月/9
  • 2013/Aug/09
  • 2013/Aug/9

[月]/[通年]/[日数] ヶ月でなければならないと規定されての無に関わらず先頭のゼロまたは月の名の長-短にな形での日数ではなく大手ゼロになります。

  • 08/2013/09
  • 08/2013/9
  • 8/2013/09
  • 8/2013/9
  • 月/2013/09
  • 月/2013/9
  • 月/2013/09
  • 月/2013/9

組み合わせの[通年],[月の名前]と[日数]スペースで区切られた 月の名前のいずれかの料金の形での日数ではなく大手ゼロになります。

  • 2013年09月
  • 2013年月09
  • 09月2013
  • 2013年09月
  • Aug2013年9
  • 2013年9月
  • など---。

も有効な"モダンブラウザ"(すなわちすべてのブラウザ以外IE9以下)

【通年]-[月数]-[日数] 月の日数が必ず先頭に(このフォーマットの MySQLの日付型 使用)

  • 2013-08-09

利用月の名前:
興味深いことに、この場合の月の名前を発見した最初の3文字の名を使うのは完全に有効:

new Date('9 August 2013');
new Date('9 Aug 2013');
new Date('9 Augu 2013');
new Date('9 Augustagfsdgsd 2013');

フォーマットや解析の写真をJavaScriptれるビットすることができますが、頭が痛い。ないすべてのブラウザ対応日には同一です。なのでリスペクトしながら、便利であるとはいえるでしょうかをベース手法に、より実践的な利用のヘルパー図書館があります。

XDate javascriptライブラリ による アダム-ショー から2011年半ばまだ開発されます。で幻想的な文書、APIのフォーマットするとともに、残り下位互換にも対応し局在の文字列です。

リロケールを変更する文字列: https://gist.github.com/1221376

例コード:

var d = new Date();
var time = d.toISOString().replace(/.*?T(\d+:\d+:\d+).*/, "$1");

出力:

"13:45:20"

図書館 sugar.js は一部の機能性に富んだ作のための日です。でも 文書化され.

砂糖の日のクラスの多くを愛で始まる日です。の作成 方法が理解できる日にちょうど約あらゆるフォーマット15 言語を含む相対形式のように"1時間前に".日まで また出力される任意のフォーマや言語を理解しやすい 書式は、ショートカットを一般の日付フォーマット.複雑な日 比較ることができるという方法は、わず 形式や内蔵精度。

少数の例:

Date.create('July 4, 1776')  -> July 4, 1776
Date.create(-446806800000)   -> November 5, 1955
Date.create(1776, 6, 4)      -> July 4, 1776
Date.create('1776年07月04日', 'ja') -> July 4, 1776
Date.utc.create('July 4, 1776', 'en')  -> July 4, 1776

Date.create().format('{Weekday} {d} {Month}, {yyyy}')    -> Monday July 4, 2003
Date.create().format('{hh}:{mm}')                        -> 15:57
Date.create().format('{12hr}:{mm}{tt}')                  -> 3:57pm
Date.create().format(Date.ISO8601_DATETIME)              -> 2011-07-05 12:24:55.528Z

Date.create().is('the 7th of June') -> false
Date.create().addMonths(2); ->"Sunday, June 15, 2014 13:39"

すべてのブラウザ

最も信頼性の高い方のフォーマット日付の形式を使うには、以下の手順:

  1. 使用 new Date()Date オブジェクト
  2. 使用 .getDate(), .getMonth().getFullYear() をそれぞれの日には、年月
  3. 貼り付けにに応じてターゲット形式

例:

var date = '2015-11-09T10:46:15.097Z';

function format(input) {
    var date = new Date(input);
    return [
       ("0" + date.getDate()).slice(-2),
       ("0" + (date.getMonth()+1)).slice(-2),
       date.getFullYear()
    ].join('/');
}

document.body.innerHTML = format(date); // OUTPUT : 09/11/2015

(参照 この怒).


現代ブラウザのみ

にお使いいただけます内蔵 .toLocaleDateString 法るいはライブラリリファレンスを参照します。だけのパスに沿って適切なロケールとオプションに合わせてフォーマットは、残念なことには近代的なブラウザ (*) :

var date = '2015-11-09T10:46:15.097Z';

function format(input) {
    return new Date(input).toLocaleDateString('en-GB', {
        year: 'numeric',
        month: '2-digit',
        day: '2-digit'
    });
}

document.body.innerHTML = format(date); // OUTPUT : 09/11/2015

(参照 この怒).


(*) よMDN, モダンブラウザとクロム24+,Firefox29+,IE11,Edge12+,Opera15+&サファリ 毎晩の構築

別のオプションに書いた:

DP_DateExtensions図書館

さらにいかなる助け、私はいかがでしたか複数のプロジェクトになっているように見えますがみなさんあります。

支援を日付/時刻フォーマット日数(加減算の日付部品)、日付を比較し、日付の解析等この豪開達した.

ない理由を考えるまで枠組みを用いてできるものの場合だけ素早く追加日程を操作するプロジェクトでチャンスです。

正しいフォーマット日帰り2012-12-29"は、スクリプトから JavaScriptの日付フォーマット:

var d1 = new Date();
return d1.format("dd-m-yy");

このコードは動作しない:

var d1 = new Date();
d1.toString('yyyy-MM-dd');      

がいいと思うだけの時間と 二つの 桁のことです:

var now = new Date();
var cHour = now.getHours();
var cMinuts = now.getMinutes();
var cSeconds = now.getSeconds();

var outStr = (cHour <= 0 ? ('0' + cHour) : cHour) + ':' + (cMinuts <= 9 ? ('0' + cMinuts) : cMinuts) + ':' + (cSeconds <= 9 ? '0' + cSeconds : cSeconds);

この機能を

toTimeString() and toLocaleDateString()

参照以下のリンクの詳細 https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date

JsSimpleDateFormat は図書館のできる形式のオブジェクトの構文の形式の文字列に戻るDateオブジェクトです。使用するJava形式(SimpleDateFormatクラス)の名月、日地域対応ができます。

例:

var sdf = new JsSimpleDateFormat("EEEE, MMMM dd, yyyy");
var formattedString = sdf.format(new Date());
var dateObject = sdf.parse("Monday, June 29, 2009");

その答えは"nowhere"の日付フォーマットは独自の機能。とは思わないは、toStringの機能を目的に適合し特定の形式です。例えばは、ECMAScript5.1仕様(http://www.ecma-international.org/publications/files/ECMA-ST/Ecma-262.pdf,2/8/2013、ページ173)、 toString 機能は文書化されて

"文字列の内容は実装に依存しています"

などの機能をサンプルを以下に使用できるの達成のフォーマットも容易だ。

function pad(toPad, padWith) {
    return (String(padWith) + String(toPad)).slice(-1 * padWith.length);
}

function dateAsInputValue(toFormat) {
    if(!(toFormat instanceof Date)) return null;
    return toFormat.getFullYear() + "-" + pad(toFormat.getMonth() + 1, "00") + "-" + pad(toFormat.getDate(), "00");
}

function timeAsInputValue(toFormat) {
    if(!(toFormat instanceof Date)) return null;        
    return pad(toFormat.getHours(), "00") + ":" + pad(toFormat.getMinutes(), "00") + ":" + pad(toFormat.getSeconds(), "00");
}

必要がない場合に全てをすることを特徴とする図書館のような Moment.js 提供したときに使うポート strftime.での性能軽量(1.35KB前57.9KB minified比Moment.js 2.15.0提供を行っています。ものの機能を strftime().

/* Port of strftime(). Compatibility notes:
 *
 * %c - formatted string is slightly different
 * %D - not implemented (use "%m/%d/%y" or "%d/%m/%y")
 * %e - space is not added
 * %E - not implemented
 * %h - not implemented (use "%b")
 * %k - space is not added
 * %n - not implemented (use "\n")
 * %O - not implemented
 * %r - not implemented (use "%I:%M:%S %p")
 * %R - not implemented (use "%H:%M")
 * %t - not implemented (use "\t")
 * %T - not implemented (use "%H:%M:%S")
 * %U - not implemented
 * %W - not implemented
 * %+ - not implemented
 * %% - not implemented (use "%")
 *
 * strftime() reference:
 * http://man7.org/linux/man-pages/man3/strftime.3.html
 *
 * Day of year (%j) code based on Joe Orost's answer:
 * http://stackoverflow.com/questions/8619879/javascript-calculate-the-day-of-the-year-1-366
 *
 * Week number (%V) code based on Taco van den Broek's prototype:
 * http://techblog.procurios.nl/k/news/view/33796/14863/calculate-iso-8601-week-and-year-in-javascript.html
 */
function strftime(sFormat, date) {
  if (!(date instanceof Date)) date = new Date();
  var nDay = date.getDay(),
    nDate = date.getDate(),
    nMonth = date.getMonth(),
    nYear = date.getFullYear(),
    nHour = date.getHours(),
    aDays = ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'],
    aMonths = ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'],
    aDayCount = [0, 31, 59, 90, 120, 151, 181, 212, 243, 273, 304, 334],
    isLeapYear = function() {
      if (nYear&3!==0) return false;
      return nYear%100!==0 || year%400===0;
    },
    getThursday = function() {
      var target = new Date(date);
      target.setDate(nDate - ((nDay+6)%7) + 3);
      return target;
    },
    zeroPad = function(nNum, nPad) {
      return ('' + (Math.pow(10, nPad) + nNum)).slice(1);
    };
  return sFormat.replace(/%[a-z]/gi, function(sMatch) {
    return {
      '%a': aDays[nDay].slice(0,3),
      '%A': aDays[nDay],
      '%b': aMonths[nMonth].slice(0,3),
      '%B': aMonths[nMonth],
      '%c': date.toUTCString(),
      '%C': Math.floor(nYear/100),
      '%d': zeroPad(nDate, 2),
      '%e': nDate,
      '%F': date.toISOString().slice(0,10),
      '%G': getThursday().getFullYear(),
      '%g': ('' + getThursday().getFullYear()).slice(2),
      '%H': zeroPad(nHour, 2),
      '%I': zeroPad((nHour+11)%12 + 1, 2),
      '%j': zeroPad(aDayCount[nMonth] + nDate + ((nMonth>1 && isLeapYear()) ? 1 : 0), 3),
      '%k': '' + nHour,
      '%l': (nHour+11)%12 + 1,
      '%m': zeroPad(nMonth + 1, 2),
      '%M': zeroPad(date.getMinutes(), 2),
      '%p': (nHour<12) ? 'AM' : 'PM',
      '%P': (nHour<12) ? 'am' : 'pm',
      '%s': Math.round(date.getTime()/1000),
      '%S': zeroPad(date.getSeconds(), 2),
      '%u': nDay || 7,
      '%V': (function() {
              var target = getThursday(),
                n1stThu = target.valueOf();
              target.setMonth(0, 1);
              var nJan1 = target.getDay();
              if (nJan1!==4) target.setMonth(0, 1 + ((4-nJan1)+7)%7);
              return zeroPad(1 + Math.ceil((n1stThu-target)/604800000), 2);
            })(),
      '%w': '' + nDay,
      '%x': date.toLocaleDateString(),
      '%X': date.toLocaleTimeString(),
      '%y': ('' + nYear).slice(2),
      '%Y': nYear,
      '%z': date.toTimeString().replace(/.+GMT([+-]\d+).+/, '$1'),
      '%Z': date.toTimeString().replace(/.+\((.+?)\)$/, '$1')
    }[sMatch] || sMatch;
  });
}

使用例:

strftime('%F'); // Returns "2016-09-15"
strftime('%A, %B %e, %Y'); // Returns "Thursday, September 15, 2016"

// You can optionally pass it a Date object...

strftime('%x %X', new Date('1/1/2016')); // Returns "1/1/2016 12:00:00 AM"

最新のコードで見ることができます: https://github.com/thdoan/strftime

個人的には使用いたしますので、両PHP、jQuery/javascript等の措置を利用したい日付の機能からphp.js http://phpjs.org/functions/date/

ライブラリーを使用してを使用する同一形式の文字列として行なわれる事となった既に分かっていく私にとって、マニュアルを含む全てのフォーマット文字列の可能性の日付の機能はもちろんオンラインでphp.net

すでにdate.js ファイルとHTMLをご希望の方法はそのようになります:

var d1=new Date();
var datestring = date('Y-m-d', d1.valueOf()/1000);

利用できるd1までとなります。getTime()の代わりにvalueOf()したい場合は、全て同じものだと言ってもいいです。

の分割により1000のjavascriptのタイムスタンプがでjavascriptのタイムスタンプはmilisecondsがPHPのタイムスタンプを秒で指定します。

多くの枠組み(だれ)を使用して日付フォーマットがない場合があります意識している。jQueryUI既に述べたように、その他の体制など Kendo UI(グローバリゼーション), ヤフー UI(Util)AngularJS しています。

// 11/6/2000
kendo.toString(new Date(value), "d")

// Monday, November 06, 2000
kendo.toString(new Date(2000, 10, 6), "D")
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top