JavaScript Temelleri

Bölüm 12

Date Nesne Sınıfı

Bölüm 12 Sayfa 5

12.3.38 - Month (Tarih) Nesne Sınıfı Prototip Nesnesinin setMonth(Ay, [gün]) Metodu

Bu metot, uygulandığı this tarih sınıfı nesne örneğinin this tarih sınıfı nesne örneğinin belirttiği tarihin Ay sayısını, argümanının belirttiği ay sayısı ile değiştirir. Eğer gün değeri verilmemişse, metodun uygulandığı this nesnesinin gün verisi, getDate() yöntemi ile sorgulanır ve yeni oluşturulacak tarih verisinin gün sayısı olarak belirlenir. Yeni Ay değeri ile yenilenen this tarih nesne sınıf örneğinin this.toValue() değerini geri döndürülür. Bu değer, this tarih nesnesinin, tarih başlangıcından milisaniye olarak farkına eşit olan, ilkel sayısal tipte, bir tamsayı değeridir. Metodun uygulandığı this tarih sınıfı nesne örneğinin önceki tarih değeri kaybolur. Metodun geri döndürdüğü milisaniye sayısından bir tarih damgası olarak yararlanılabilir ve bu tarih damgasından tarih nesnesinin değeri yeniden oluşturulabilir.

Uyarı : ECMA-262 standardında, bu metodun çalışması sırasında tarih verisinin UTC tarihi ile yeniden yapılacacağı açıklanmıştır. Aslında bu bir hatalı açıklamadır ve tarih verisi yerel tarih ile yeniden yapılanmaktadır.

Bu konuda bir JavaScript programı ve bağlantılı olduğu uygulama sayfasında verdiği sonuç, aşağıda görülmektedir.

...
var tarih = new Date(1998, 6, 18, 12, 33, 46, 400), td = 0, yeniTarih = new Date();

sonuçYaz('Tarih : ', tarih, 'b12.3.38-uyg-1-sonuç-1');
			
sonuçYaz('İlk Ay Sayısı : ', tarih.getMonth(), 'b12.3.38-uyg-1-sonuç-2');

td = tarih.setMonth(11);// Dikkat Tarih Değeri Yenilendi !!!

sonuçYaz('Yenilenen Ay Sayısı : ', tarih.getMonth(), 'b12.3.38-uyg-1-sonuç-3');

sonuçYaz('Yenilenen Tarih : ', tarih, 'b12.3.38-uyg-1-sonuç-4');

sonuçYaz('td (Tarih Damgası) (milisaniye olarak) : ', td, 'b12.3.38-uyg-1-sonuç-5');

yeniTarih = new Date(td);// Tarih Damgasının Belirttiği Tarihin Oluşturulması

sonuçYaz('Tarih Damgasından Yeniden Yaratılan Tarih : ', yeniTarih, 'b12.3.38-uyg-1-sonuç-6');

}

...
		

Program Sonucu :

12.3.39 - Month (Tarih) Nesne Sınıfı Prototip Nesnesinin setUTCMonth(Ay, [gün]) Metodu

Bu metot, uygulandığı this tarih sınıfı nesne örneğinin this tarih sınıfı nesne örneğinin belirttiği tarihin Ay sayısını, argümanının belirttiği ay sayısı ile değiştirir. Eğer gün değeri verilmemişse, metodun uygulandığı this nesnesinin gün verisi, getDate() yöntemi ile sorgulanır ve yeni oluşturulacak tarih verisinin gün sayısı olarak belirlenir. Yeni ay değeri ile yenilenen this tarih nesne sınıf örneğinin this.toValue() değerini geri döndürülür. Bu değer, this tarih nesnesinin, tarih başlangıcından milisaniye olarak farkına eşit olan, ilkel sayısal tipte, bir tamsayı değeridir. Metodun uygulandığı this tarih sınıfı nesne örneğinin önceki tarih değeri kaybolur. Metodun geri döndürdüğü milisaniye sayısından bir tarih damgası olarak yararlanılabilir ve bu tarih damgasından tarih nesnesinin değeri yeniden oluşturulabilir.

Uyarı : ECMA-262 standardında, bu metodun çalışması sırasında tarih verisinin yerel tarih ile yeniden yapılacacağı açıklanmıştır. Aslında bu bir hatalı açıklamadır ve tarih verisi UTC tarihi ile yeniden yapılanmaktadır.

Bu konuda bir JavaScript programı ve bağlantılı olduğu uygulama sayfasında verdiği sonuç, aşağıda görülmektedir.

...
var tarih = new Date(1998, 6, 18, 12, 33, 46, 400), td = 0, yeniTarih = new Date();

sonuçYaz('Tarih : ', tarih, 'b12.3.39-uyg-1-sonuç-1');
			
sonuçYaz('İlk UTC Ay Sayısı : ', tarih.getUTCMonth(), 'b12.3.39-uyg-1-sonuç-2');

td = tarih.setUTCMonth(20);// Dikkat Tarih Değeri Yenilendi !!!

sonuçYaz('Yenilenen UTC Ay Sayısı : ', tarih.getUTCMonth(), 'b12.3.39-uyg-1-sonuç-3');

sonuçYaz('Yenilenen Tarih : ', tarih, 'b12.3.39-uyg-1-sonuç-4');

sonuçYaz('td (Tarih Damgası) (milisaniye olarak) : ', td, 'b12.3.39-uyg-1-sonuç-5');

yeniTarih = new Date(td);// Tarih Damgasının Belirttiği Tarihin Oluşturulması

sonuçYaz('Tarih Damgasından Yeniden Yaratılan Tarih : ', yeniTarih, 'b12.3.39-uyg-1-sonuç-6');
...
		

Program Sonucu :

12.3.40 - FullYear (Tarih) Nesne Sınıfı Prototip Nesnesinin setFullYear(Yıl [, ay [, gün]) Metodu

Bu metot, uygulandığı this tarih sınıfı nesne örneğinin this tarih sınıfı nesne örneğinin belirttiği tarihin Tam Yıl Sayısını, argümanının belirttiği Tam Yıl sayısı değiştirir. Eğer ay ve gün değeri verilmemişse, metodun uygulandığı this nesnesinin ay ve gün verileri getMonth() ve getDate() yöntemi ile sorgulanır ve yeni oluşturulacak tarih verisinin ay ve gün değerleri olarak belirlenir. Yeni Tam Yıl değeri ile yenilenen this tarih nesne sınıf örneğinin this.toValue() değerini geri döndürülür. Bu değer, this tarih nesnesinin, tarih başlangıcından milisaniye olarak farkına eşit olan, ilkel sTam Yılısal tipte, bir tamsTam Yılı değeridir. Metodun uygulandığı this tarih sınıfı nesne örneğinin önceki tarih değeri kTam Yılbolur. Metodun geri döndürdüğü milisaniye sTam Yılısından bir tarih damgası olarak yararlanılabilir ve bu tarih damgasından tarih nesnesinin değeri yeniden oluşturulabilir.

Uyarı : ECMA-262 standardında, bu metodun çalışması sırasında tarih verisinin UTC tarihi ile yeniden yapılacacağı açıklanmıştır. Aslında bu bir hatalı açıklamadır ve tarih verisi yerel tarih ile yeniden yapılanmaktadır.

Bu konuda bir JavaScript programı ve bağlantılı olduğu uygulama sayfasında verdiği sonuç, aşağıda görülmektedir.

...
var tarih = new Date(1998, 6, 18, 12, 33, 46, 400), td = 0, yeniTarih = new Date();

sonuçYaz('Tarih : ', tarih, 'b12.3.40-uyg-1-sonuç-1');
			
sonuçYaz('İlk Tam Yıl Sayısı : ', tarih.getFullYear(), 'b12.3.40-uyg-1-sonuç-2');

td = tarih.setFullYear(1982);// Dikkat Tarih Değeri Yenilendi !!!

sonuçYaz('Yenilenen Tam Yıl Sayısı : ', tarih.getFullYear(), 'b12.3.40-uyg-1-sonuç-3');

sonuçYaz('Yenilenen Tarih : ', tarih, 'b12.3.40-uyg-1-sonuç-4');

sonuçYaz('td (Tarih Damgası) (milisaniye olarak) : ', td, 'b12.3.40-uyg-1-sonuç-5');

yeniTarih = new Date(td);// Tarih Damgasının Belirttiği Tarihin Oluşturulması

sonuçYaz('Tarih Damgasından Yeniden Yaratılan Tarih : ', yeniTarih, 'b12.3.40-uyg-1-sonuç-6');

}

...
		

Program Sonucu :

12.3.41 - FullYear (Tarih) Nesne Sınıfı Prototip Nesnesinin setUTCFullYear(Yıl, [ay [, gün]) Metodu

Bu metot, uygulandığı this tarih sınıfı nesne örneğinin this tarih sınıfı nesne örneğinin belirttiği tarihin Tam Yıl Sayısı, argümanının belirttiği Tam Yıl sayısı ile değiştirir. Eğer ay ve gün değeri verilmemişse, metodun uygulandığı this nesnesinin ay ve gün verileri getMonth() ve getDate() yöntemi ile sorgulanır ve yeni oluşturulacak tarih verisinin ay ve gün değerleri olarak belirlenir. Yeni Tam Yıl değeri ile yenilenen this tarih nesne sınıf örneğinin this.toValue() değerini geri döndürülür. Bu değer, this tarih nesnesinin, tarih başlangıcından milisaniye olarak farkına eşit olan, ilkel sTam Yılısal tipte, bir tamsTam Yılı değeridir. Metodun uygulandığı this tarih sınıfı nesne örneğinin önceki tarih değeri kTam Yılbolur. Metodun geri döndürdüğü milisaniye sTam Yılısından bir tarih damgası olarak yararlanılabilir ve bu tarih damgasından tarih nesnesinin değeri yeniden oluşturulabilir.

Uyarı : ECMA-262 standardında, bu metodun çalışması sırasında tarih verisinin yerel tarih ile yeniden yapılacacağı açıklanmıştır. Aslında bu bir hatalı açıklamadır ve tarih verisi UTC tarihi ile yeniden yapılanmaktadır.

Bu konuda bir JavaScript programı ve bağlantılı olduğu uygulama sTam Yılfasında verdiği sonuç, aşağıda görülmektedir.

...
var tarih = new Date(1998, 6, 18, 12, 33, 46, 400), td = 0, yeniTarih = new Date();

sonuçYaz('Tarih : ', tarih, 'b12.3.41-uyg-1-sonuç-1');
			
sonuçYaz('İlk UTC Tam Yıl STam Yılısı : ', tarih.getUTCFullYear(), 'b12.3.41-uyg-1-sonuç-2');

td = tarih.setUTCFullYear(1982);// Dikkat Tarih Değeri Yenilendi !!!

sonuçYaz('Yenilenen UTC Tam Yıl STam Yılısı : ', tarih.getUTCFullYear(), 'b12.3.41-uyg-1-sonuç-3');

sonuçYaz('Yenilenen Tarih : ', tarih, 'b12.3.41-uyg-1-sonuç-4');

sonuçYaz('td (Tarih Damgası) (milisaniye olarak) : ', td, 'b12.3.41-uyg-1-sonuç-5');

yeniTarih = new Date(td);// Tarih Damgasının Belirttiği Tarihin Oluşturulması

sonuçYaz('Tarih Damgasından Yeniden Yaratılan Tarih : ', yeniTarih, 'b12.3.41-uyg-1-sonuç-6');
...
		

Program Sonucu :

12.3.42 - Date (Tarih) Nesne Sınıfı Prototip Nesnesinin toUTCString() Metodu

Tarih nesne sınıfı prototip nesnesinin toUTCString() metodu, geriye okunabilir, UTC saat diliminde bir tarih bilgisi içeriği olan, bir ilkel karakter dizigisi verisi (string) döndürür. Bu konuda bir JavaScript programı ve bağlantılı olduğu uygulama sayfasında verdiği sonuç, aşağıda görülmektedir:

...
var tarih('12/03/1955');

bilgiyiVeTipiniYaz(tarih.toUTCString(), 'b12.3.42-uyg-1-sonuç-1');
...
		

Program Sonucu :

12.4 - Date (Tarih) Nesne Sınıfı Örneklerinin Özellikleri

Tarih nesne sınıfı örneklerinin özellikleri, tarih sınıfı prototipinin özellikleri ile sınırlıdır.

12.5 - Date (Tarih) Nesne Sınıfı Yapılandıcısının Fonksiyon Olarak Kullanımı

Tarih nesne sınıfı yapılandırıcısı salt bir fonksiyon olarak kullanıldığında, içeriği geçerli UTC zamanı olan bir ilkel karakter dizgisi tipinde, bir karakter dizigisi verisi döndürür. Kullanım şekli aynı tarih yapılandırıcısı gibidir.

a = Date();
		

ifadesi,

a = new Date().toString();
		

ifadesi ile aynıdır. Bu konuda bir JavaScript programı ve bağlantılı olduğu uygulama sayfasında verdiği sonuç, aşağıda görülmektedir:

...
var tarih = Date();

bilgiyiVeTipiniYaz(tarih, 'b12.5-uyg-1-sonuç-1');
...
		

Program Sonucu :

Date() fonksiyonun bu şekilde kullanılması pek alışılmış bir uygulama değildir ve belge çözümleyiciler tarafından da fazla ayrıntılı olarak desteklenmez. Yukarıdaki örnek dışında kullanılması sağlık verilmez.

Valid XHTML 1.1