各ブラウザのlastModifiedの値は?

[上に] [前に] [次に]
とほほ 2000/01/13(木) 01:33:55
../200001/00010154.htm
の関連で質問させてください。

各ブラウザの lastModified は、どんな形式で返されるのでしょうか?
とりあえず、私の手元にあるブラウザでは、
  Win+NN4.0: 12/31/00 23:59:59
  Win+NN3.0: 12/31/00 23:59:59
  Win+NN2.0: Sun Dec 31 23:59:59 2000
  Win+IE5.0: 12/31/2000 23:59:59
となっており、これを Date(document.lastModified)とした結果は、
  Win+NN4.0: 0000/12/31 23:59:59
  Win+NN3.0: 0000/12/31 23:59:59
  Win+NN2.0: アプリケーションエラーが発生
  Win+IE5.0: 2000/12/31 23:59:59
のように解釈されました。

Mac版や、UNIX版、NN4.06、NN4.5、IE3.0、IE4.0などでの動作を教え
ていただけませんでしょうか?

とほほ 2000/01/13(木) 01:54:57
すみません。Date()で解釈した時の
> Win+NN4.0: 0000/12/31 23:59:59
> Win+NN3.0: 0000/12/31 23:59:59
は、
 Win+NN4.0: 00/12/31 23:59:59(1900年を意味しているみたい)
 Win+NN3.0: 00/12/31 23:59:59(1900年を意味しているみたい)
の誤りでした。

mm 2000/01/13(木) 02:29:41
Win+NN4.01 では以下のようになったのですが、取り方を間違っているのでしょうか?
document.lastModified = 12/31/00 23:59:58
var d = new Date(document.lastModified)
d.toString() = Mon Dec 31 23:59:58 PST 1900
d.toLocaleString() = 12/31/00 23:59:58

一応、Win+IE3.02では、以下の通りでした(Dateでは解釈できてない)
document.lastModified = 日 12 31 23:59:58 2000
var d = new Date(document.lastModified)
d.toString() = Thu Jan 01 09:00:00 1970
d.toLocaleString() = 01/01/70 09:00:00

Nemo(capitaine) 2000/01/13(木) 02:56:38
奇数秒にならないので改ざんしてますけど(^^;

lastModified の値です。
Win+NN3.01: 12/31/00 23:59:59
Win+NN4.05: 12/31/00 23:59:59
Win+NN4.5: 12/31/00 23:59:59
Win+IE4.01(SP2): 12/31/00 14:59:59

うーん、Date() を通すと、こんな形式になると思いますけど?
Win+NN3.01: Mon Dec 31 23:59:59 PST 1900
Win+NN4.05: Mon Dec 31 23:59:59 東京 (標準時) 1900
Win+NN4.5: Mon Dec 31 23:59:59 GMT+0900 (???? (?W????)) 1900
Win+IE4.01(SP2): Mon Dec 31 14:59:59 UTC+0900 1900

ねすけの4.5では、表示に一寸バグが出ています(lastModifiedに係わらず)。
やはりIE4は9時間ずれますね。IE5では2000年が出ますか。

きたむら 2000/01/13(木) 03:49:20
Win+NN4.04です。

lastModified → 12/31/00 23:59:58
new Date → Mon Dec 31 23:59:58 JST 1900

Kazz 2000/01/13(木) 03:58:21
一部かぶってますが^^;

Win+IE5.01
document.lastModified: 12/31/2000 23:59:59
Date(document.lastModified): Sun Dec 31 23:59:59 UTC+0900 2000

Win+IE4.01
document.lastModified: 12/31/00 14:59:59
Date(document.lastModified): Mon Dec 31 14:59:59 UTC+0900 1900

Win+IE3.02
document.lastModified: 日 12 31 23:59:59 2000
Date(document.lastModified): Thu Jan 01 09:00:00 1970

Win+NC4.7
document.lastModified: Sunday, December 31, 2000 23:59:59
Date(document.lastModified): Sun Dec 31 23:59:59 GMT+0900 (???? (?W????)) 2000

Win+NC4.04
document.lastModified: 12/31/00 23:59:59
Date(document.lastModified): Mon Dec 31 23:59:59 PST 1900

とほほ 2000/01/14(金) 01:34:36
みなさんありがとうございます。

私の最初の発言は説明不足でしたね。
> これを Date(document.lastModified)とした結果は、
の部分の表示は忘れてください。(^^;)

とりあえず、現状の値をまとめたものを
http://www.tohoho-web.com/wwwxx033.htm
にこっそり公開しています。

書き間違いや、追加情報、MacやUNIX版の情報、究極の対応プログラム
などの情報がありましたら、直接私宛てにメールいただけると嬉しいです。

とほほ 2000/01/15(土) 03:50:53
メールで頂いた情報をもとに、
http://www.tohoho-web.com/wwwxx033.htm
をアップデートしました。

Date(lastModified)を解釈すると、ブラウザによって
 ・1900年と解釈してしまう。
 ・1970年と解釈してしまう。
 ・1969年と解釈してしまう。
 ・解釈できない。( Invalid Date という値になる)
 ・アプリケーションエラーになる。
 ・getYear()がNaNを返す。
 ・同じバージョンでもOSによって動作が異なる。
など、様々でした。

IE5.0以降、NN4.7以降であれば解釈して表示してよさそうですが、
それ以外なら、lastModifiedの値をそのまま表示する
(IE4.0の9時間くらいの差異は無視する?)
くらいしかないのかなぁ・・・
まともに対応しようと思ったら、けっこうすごいコーディングになりますね。

とほほ 2000/01/18(火) 00:02:09
http://www.tohoho-web.com/wwwxx033.htm
を再度アップデートしました。

やはり、UNIX版やMac版の動作は無茶苦茶ですね・・・
はたして、解決策はあるのでしょうか・・・

# 私はすでに、さじを投げかけています・・・

[上に] [前に] [次に]