Hi,

Saudara Mark benar, bahwa itu bukan kesalahan IE menghasilkan angka 3900. 
Itu kesalahan dari programer, function yang digunakan serta javascript 
engine yang dipakai di browsernya.

Sebelum ECMAScript standarad, (JScript 3.0 dan versi berikutnya di Internet 
Explorer dan JavaScript 1.3 di Netscape Navigator), function getYear 
mengembalikan tahun dengan mengurangin 1900. Jadi tahun 2000 = 100.

Setelah ECMA Script di standardkan, function getYear diharapkan tidak 
dipakai lagi. Para pemogram diharapakan memakain getFullYear. Tapi 
masalahnya, tiap orang memakai browser yang berbeda-beda.

Untuk mengatasi itu, Microsoft dan Netscape mengubah hasil yang dikeluarkan 
dari function itu, getYear
* mengembalikan 4 angka jika
    1. >= 2000
    2. < 1900
* mengembalikan 2 angka (00-99) jika
    1. >= 1900
    2. < 2000

Nah, mengapa dengan script yang sama, di IE mengeluarkan tahun yang salah 
dan di Netscape mengeluarkan benar.

Saya sependapat dengan saudara Mark, mungkin saudara Elwin membuat:
   d.getYear() + 1900

Dan saudara Elwin mentest dengan:
1. IE dengan JScript 3.0+
2. Netscape dengan JavaScript dibawah versi 1.3

Itu hanya teori saya saja. Apapun teori dibalik kesalahan tahun yang 
dihasilkan, para pemogram diharapkan tidak memakai getDate lagi.

Siska Basri
http://padang.hypermart.net

PS:
Saudara Mark, itu yang di plasmedia pake bahasa apa?
http://www.plasmedia.com/frontline/plasmedia/help.asp?sid=646935658
Saya coba terjemahin di babelfish pake bahasa perancis, jerman, itali, 
portugis dan spanyol, tapi tak bisa.

>From: "Mark P. Eliasaputra" <[EMAIL PROTECTED]>
>Reply-To: [EMAIL PROTECTED]
>To: <[EMAIL PROTECTED]>
>Subject: Re: [webauthor] Perbedaan tahun di netscape dan internet explorer
>Date: Thu, 13 Jan 2000 16:00:57 +0700
>
>Hi Elwin, Siska, dan yang lainnya,
>
>Sebenarnya kesalahannya bukan demikian. IE tidak mengembalikan getYear() 
>sebagai
>angka 3900.
>
>Coba tampilkan tahun pakai IE dengan JavaScript berikut:
>
>   d = new Date()
>   document.writeln(d.getYear())
>
>Pasti yang keluar 2000!
>
>Coba script yang sama ditampilkan di Netscape. Di Netscape yang keluar 100.
>
>Nah salah di mana? Kok di script Anda sebelumnya di IE bisa keluar 3900? 
>Itu
>karena pasti di script Anda asumsikan tahun cuma 00-99, maka Anda tambahkan
>1900:
>
>   tahun = d.getYear() + 1900
>   document.writeln(tahun)
>
>Ya pasti saja IE menghasilkan 3900 (2000 + 1900). Tapi paling parah jika
>scriptnya:
>
>   tahun = '19' + d.getYear()
>
>Di IE keluar 192000, sementara di Netscape keluar 19100. Kacau beliau...
>benar-benar tidak Y2K compliant.
>
>Makanya hati-hati dengan getYear(). Memang sebaiknya diganti dengan
>getFullYear() saja. Atau buat kondisi sendiri:
>
>tahun = d.getYear()
>if(tahun < 2000) tahun += 1900  // hasilnya selalu empat digit.
>
>-----------------
>Mark P. Eliasaputra
>http://www.plasmedia.com/markpe
>[EMAIL PROTECTED], [EMAIL PROTECTED], [EMAIL PROTECTED]
>Plasmedia - Plexis Erakarsa Multimedia
>
> > Hi,
> >
> > Itu kesalahan dari Internet Explorer.
> >
> > Coba ganti script anda dari "Get Year" ke "Get Full Year".
> >
> > "Get Year" cuma kasih 2 angka dan Internet Explorer. Sesudah tahun 2000, 
>IE
> > menghitung tahunnya menjadi 3900.
> >
> > "Get Full Year" kasih 4 angka.
> >
> > Netscape sudah membetulkan kesalahan ini, maka itu tidak terjadi 
>kesalahan
> > di Netscape. Dan Microsoft bilang, mereka tidak akan membetulkan
> > kesalahannya.
> >
> > Semoga Membantu.
> >
> > Siska Basri
> > http://padang.hypermart.net
>
>
>
>
>-= Dual T3 Webhosting on Dual Pentium III 450 - www.indoglobal.com =-
>To unsubscribe, e-mail : [EMAIL PROTECTED]
>To subscribe, e-mail   : [EMAIL PROTECTED]
>Netika BerInternet     : [EMAIL PROTECTED]
>

______________________________________________________
Get Your Private, Free Email at http://www.hotmail.com


-= Dual T3 Webhosting on Dual Pentium III 450 - www.indoglobal.com =-
To unsubscribe, e-mail : [EMAIL PROTECTED]
To subscribe, e-mail   : [EMAIL PROTECTED]
Netika BerInternet     : [EMAIL PROTECTED]

Kirim email ke