Orada birkaç deli bir JS ile meydana şeyler TARİH dönüştürme dizeleri, örneğin size sağlanan aşağıdaki tarihini düşünün nesne
Not: Aşağıdaki örnekler veya olabilir veya olmayabilir KAPALI BİR GÜN bağlı SİZİN diliminin ve şimdiki zaman.
new Date("2011-09-24"); // Year-Month-Day
// => Fri Sep 23 2011 17:00:00 GMT-0700 (MST) - ONE DAY OFF.
Ancak, dize biçimini Ay-Gün-Yıl olarak yeniden düzenlersek ...
new Date("09-24-2011");
=> // Sat Sep 24 2011 00:00:00 GMT-0700 (MST) - CORRECT DATE.
Başka bir garip
new Date("2011-09-24");
// => Fri Sep 23 2011 17:00:00 GMT-0700 (MST) - ONE DAY OFF AS BEFORE.
new Date("2011/09/24"); // change from "-" to "/".
=> // Sat Sep 24 2011 00:00:00 GMT-0700 (MST) - CORRECT DATE.
Yeni bir tarih oluştururken "2011-09-24" tarihinizdeki kısa çizgileri kolayca değiştirebiliriz
new Date("2011-09-24".replace(/-/g, '\/')); // => "2011/09/24".
=> // Sat Sep 24 2011 00:00:00 GMT-0700 (MST) - CORRECT DATE.
"2011-09-24T00: 00: 00" gibi bir tarih dizemiz olsaydı ne olurdu?
new Date("2011-09-24T00:00:00");
// => Fri Sep 23 2011 17:00:00 GMT-0700 (MST) - ONE DAY OFF.
Şimdi değiştirmek tire için eğik çizgi daha önce olduğu gibi; ne oluyor?
new Date("2011/09/24T00:00:00");
// => Invalid Date
Genellikle 2011-09-24T00: 00: 00 tarih biçimini yönetmem gerekiyor, bu yüzden yaptığım bu.
new Date("2011-09-24T00:00:00".replace(/-/g, '\/').replace(/T.+/, ''));
// => Sat Sep 24 2011 00:00:00 GMT-0700 (MST) - CORRECT DATE.
GÜNCELLEME
Tarih yapıcısına ayrı bağımsız değişkenler sağlarsanız, aşağıda açıklandığı gibi başka yararlı çıktılar alabilirsiniz
Not: bağımsız değişkenler Number veya String türünde olabilir. Karışık değerlerle örnekler göstereceğim.
Belirli bir yılın ilk ayını ve gününü alın
new Date(2011, 0); // Normal behavior as months in this case are zero based.
=> // Sat Jan 01 2011 00:00:00 GMT-0700 (MST)
Yılın son ayını ve gününü alın
new Date((2011 + 1), 0, 0); // The second zero roles back one day into the previous month's last day.
=> // Sat Dec 31 2011 00:00:00 GMT-0700 (MST)
Sayı örneği, String argümanları. Yine sıfır temelli aylar nedeniyle ay Mart olduğunu unutmayın.
new Date(2011, "02");
=> // Tue Mar 01 2011 00:00:00 GMT-0700 (MST)
Aynı şeyi ancak sıfır günle yaparsak, farklı bir şey elde ederiz.
new Date(2011, "02", 0); // again the zero roles back from March to the last day of February.
=> // Mon Feb 28 2011 00:00:00 GMT-0700 (MST)
Herhangi bir yıl ve ay argümanına sıfır günü eklenmesi, bir önceki ayın son gününü alır. Negatif sayılarla devam ederseniz başka bir gün geri dönmeye devam edebilirsiniz
new Date(2011, "02", -1);
=> // Sun Feb 27 2011 00:00:00 GMT-0700 (MST)