[22] [CODE(DOMi)@en[[[Document]]]] [[インターフェイス]]の
[DFN[[CODE(DOMa)@en[[[lastModified]]]]]] [[IDL属性]]は、
[[文書]]の[[最終修正日時]]を返します。

* 仕様書

[REFS[
- [13] [CITE@en-US-x-hixie[HTML Standard]]
( ([TIME[2014-05-06 22:16:25 +09:00]] 版))
<http://www.whatwg.org/specs/web-apps/current-work/#dom-document-lastmodified>
]REFS]

* 日時形式

[14] 歴史的に様々な[[日時形式]]が使われてきましたが、現行仕様では
[CODE[MM/DD/YYYY hh:mm:ss]] という形式が定義されています [SRC[>>13]]。

[15] ここで、[[年]]と[[時]]の間は [CODE[[[U+0020]]]] です [SRC[>>13]]。

[18] [[年]]は、4桁以上でなければなりませんが、5桁以上の場合[[先導0]]は認められていません [SRC[>>13]]。
他の数字列は2桁でなければなりません [SRC[>>13]]。

;; [19] 各要素の[[値域]]は明記されていません。

[16] [[時間帯]]は、[[利用者]]のものを用いるとされています [SRC[>>13]]。

;; [17] 必ずしも[[著者]]のものではありません。

* 関連

[20] [[JavaScript]] における[[日時]]の構文解析 ([CODE(JS)@en[[[Date]]]] [[コンストラクター]]など)
は、 [CODE(DOMa)@en[[[lastModified]]]] の値を構文解析できることが期待されています。

[23] [[HTTP]] から返された[[文書]]の場合には、 [CODE(HTTP)@en[[[Last-Modified:]]]]
[[ヘッダー]]の値が [CODE(DOMa)@en[[[lastModified]]]] に使われます。

* 歴史

[1]
[CITE[Bug 1241 - javascript の document.lastModified はローカライズされて表示されるべき]] <http://bugzilla.mozilla.gr.jp/show_bug.cgi?id=1241>
([[名無しさん]])

[2]
[CITE[Bug 4523 - Last-ModifiedフィールドがHTTPヘッダに無い場合、document.lastModifiedが文字化けする]] <http://bugzilla.mozilla.gr.jp/show_bug.cgi?id=4523>
([[名無しさん]])

[3]
[CITE@en[DOM:document.lastModified - MDC]] <http://developer.mozilla.org/en/docs/DOM:document.lastModified>
([[名無しさん]])

[4]
[CITE@[lastModified Property (document)]] <http://msdn.microsoft.com/workshop/author/dhtml/reference/properties/lastmodified.asp>
([[名無しさん]])

[5]
[[Firefox]] 1.5 で試しましたところ、
[[HTTP]] で [CODE(HTTP)@en[[[Last-Modified]]:]]
がなかったり、[[1970年1月1日0時0分0秒]]だったりすると
[CODE(HTTP)@en[[[Date]]:]] になるようです。
([[名無しさん]] [WEAK[2006-12-24 07:12:06 +00:00]])

[6]
[CITE[Bug 99224 &#8211; document.lastModified should be localized]] ([CODE[2007-06-03 01:17:54 +09:00]] 版) <https://bugzilla.mozilla.org/show_bug.cgi?id=99224>
([[名無しさん]])


[7]
[CITE[Bug 107445 &#8211; document.lastModified should read UTC rather than GMT]] ([TIME[2007-06-03 01:19:17 +09:00]] 版) <https://bugzilla.mozilla.org/show_bug.cgi?id=107445>
([[名無しさん]])

[8]
[CITE[about:blank.lastModified]] ([TIME[2008-11-20 12:12:12 +09:00]] 版) <http://suika.fam.cx/~wakaba/-temp/test/dom/document/meta/last-modified/about-blank-1.html>

[[Firefox]] 3
>about:blank's lastModified = "11/20/2008 12:34:02" (now)
>Container's lastModified = "11/20/2008 12:12:12"

[[Opera]] 9.61
>about:blank's lastModified = "Thu, 20 Nov 2008 03:12:12 GMT"
>Container's lastModified = "Thu, 20 Nov 2008 03:12:12 GMT"

;; Open <about:blank>, type <javascript:alert(document.lastModified)> into the address bar, then
a message box says: "January 1, 1970 GMT".

[[Safari]] 3.2
>about:blank's lastModified = ""
>Container's lastModified = "Thu, 20 Nov 2008 03:12:12 GMT"

[[WinIE 7]]
>about:blank's lastModified = "11/20/2008 12:34:48" (now)
>Container's lastModified = "11/20/2008 12:12:12"

;; [[Windows Vista]] [[Japanese]] locale, [[UTC]]+09:00

[9]
[CITE[data:.lastModified]] ([TIME[2008-11-20 12:13:33 +09:00]] 版) <http://suika.fam.cx/~wakaba/-temp/test/dom/document/meta/last-modified/data-1.html>

[[Firefox]] 3
>data:'s lastModified = "11/20/2008 12:36:51" (now)
>Container's lastModified = "11/20/2008 12:13:33"

[[Opera]] 9.61
>data:'s lastModified = "January 1, 1970 GMT"
>Container's lastModified = "Thu, 20 Nov 2008 03:13:33 GMT"

[[Safari]] 3.2: Security error.

[[WinIE 7]]: Does not support data:.

[10]
[CITE[javascript:.lastModified]] ([TIME[2008-11-20 12:23:58 +09:00]] 版) <http://suika.fam.cx/~wakaba/-temp/test/dom/document/meta/last-modified/javascript-1.html>

[[Firefox]] 3
>javascript:'s lastModified = "11/20/2008 12:40:32" (now)
>Container's lastModified = "11/20/2008 12:23:58"

[[Opera 9]]
>javascript:'s lastModified = "January 1, 1970 GMT"
>Container's lastModified = "Thu, 20 Nov 2008 03:23:58 GMT"

[[Safari]] 3.2
>javascript:'s lastModified = ""
>Container's lastModified = "Thu, 20 Nov 2008 03:23:58 GMT"

[[WinIE 7]]
>javascript:'s lastModified = "11/20/2008 12:41:17" (now)
>Container's lastModified = "11/20/2008 12:23:58"

[11] [CITE[IRC logs: freenode / #whatwg / 20101013]]
( ([TIME[2010-10-23 23:42:03 +09:00]] 版))
<http://krijnhoetmer.nl/irc-logs/whatwg/20101013#l-615>

[12] [CITE[IRC logs: freenode / #whatwg / 20101015]]
( ([TIME[2010-10-24 01:34:42 +09:00]] 版))
<http://krijnhoetmer.nl/irc-logs/whatwg/20101015#l-399>

[FIG(quote)[
[FIGCAPTION[
[21] [CITE[富山県立富山中部高等学校]] ([TIME[2014-05-09 09:08:52 +09:00]] 版) <http://www.tym.ed.jp/sc332/>
]FIGCAPTION]

[PRE(HTML example code)[
    <script type="text/javascript">
     <!--
     var day = new Date(document.lastModified);
     var y = day.getYear();
     var m = day.getMonth() + 1;
     var d = day.getDate();
     document.write("最終更新日:" + y + "年" + m + "月" + d + "日");
     // -->
    </script>
]PRE]

> 最終更新日:114年5月9日
]FIG]


[24] [CITE@en[Bug 27817 – Value of lastModified probably shouldn't change during the lifetime of the document]]
( ([TIME[2015-01-16 12:01:07 +09:00]] 版))
<https://www.w3.org/Bugs/Public/show_bug.cgi?id=27817>

[25] [CITE[Difference of document.lastModified(jp)]]
([TIME[2015-08-23 02:53:29 +09:00]])
<http://userweb.alles.or.jp/sfujita/jpn/difflast.htm>

[26] [CITE[lastModified value without Last-Modified http-header]]
([[ShinSoft]]著, [TIME[2016-07-19 14:26:38 +09:00]])
<http://cgi.din.or.jp/~hagi3/JavaScript/JSTips/Probs/cat.cgi?f=lastModified.htm>

[27] [CITE[lastModifiedを綺麗に表示するには?]]
([TIME[2016-04-16 22:18:31 +09:00]])
<http://www.tohoho-web.com/wwwxx033.htm>

[28] [CITE[Java Script Tips collection - Problems in JavaScript]]
([[ShinSoft]]著, [TIME[2002-02-17 01:32:22 +09:00]])
<http://www.din.or.jp/~hagi3/JavaScript/JSTips/Problems.htm>

[29] [[Chrome]] は [CODE(HTTP)@en[Last-Modified:]] の構文解析に失敗した時、
[CODE(JS)@en[document.lastModified]] で [CODE[01/00/0000 00:00:00]] を返します。
[TIME[2016-07-30T13:41:10.400Z]]

[FIG(quote)[
[FIGCAPTION[
[30] [CITE@ja[タレント二世のバラエティー出演禁止!人気番組「パパ、どこ... - Record China]] 
<http://www.recordchina.co.jp/a134494.html>
]FIGCAPTION]

>
[PRE(HTTP code)[
Date:Tue, 17 Jan 2017 10:32:11 GMT
Expires:Thu, 19 Nov 1981 08:52:00 GMT
Last-Modified:Thu, 01 Jan 1970 09:00:00 JST
]PRE]
]FIG]

[31] [CITE@en[Remove lastModifiedDate handling. (#300)]]
([[inexorabletash]]著, [TIME[2019-09-25 05:24:42 +09:00]])
<https://github.com/w3c/IndexedDB/commit/2bc2e3c22e23c7649fb51778f855e1c8193e247f>

[32] [CITE@en[Remove lastModifiedDate handling by inexorabletash · Pull Request #300 · w3c/IndexedDB]]
([TIME[2020-02-01 14:43:46 +09:00]])
<https://github.com/w3c/IndexedDB/pull/300>

[33] [CITE@en[lastModifiedDate on File is not a thing · Issue #215 · w3c/IndexedDB]]
([TIME[2020-02-01 14:44:07 +09:00]])
<https://github.com/w3c/IndexedDB/issues/215>