Javascript tarih nesnesi her zaman bir gün izinli midir?


238

Benim Java Script uygulamasında ben böyle bir biçimde depolanan tarih var:

2011-09-24

Şimdi yeni bir Date nesnesi oluşturmak için yukarıdaki değeri kullanmayı denediğimde (böylece tarihi farklı bir biçimde alabilirim), tarih her zaman bir gün geri döner. Aşağıya bakınız:

var doo = new Date("2011-09-24");
console.log(doo);

kütükler:

Fri Sep 23 2011 20:00:00 GMT-0400 (Eastern Daylight Time)

11
Javascript'in Date sınıfı bir tarihi temsil etmez, bir zaman damgasını temsil eder (Java'da aynıdır). Bir tarih yapmak için bir saat dilimi kullanır ve sorunun nedeni budur. GMT / UTC saat dilimiyle (24 Eylül 2011, 00 : 00 UTC) ayrıştırır ve ardından 4 saatlik farklı bir saat dilimiyle (23 Eylül 2011, 20 : 00 GMT-0400) çıktılar .
Codo

2
"Geçersiz tarih" alıyorum. '-' karakterlerini '/' karakterleriyle değiştirin ve tekrar deneyin. Ya da tarihi bitlerine bölün ve bileşenleri ayrı ayrı ayarlayın (bunu yaparsanız, ay numarasından 1 çıkarın).
RobG

@Codo - evet, iyi cevap. ECMA-262 15.9.1.15 geçerlidir. OP "2011-09-24T20: 00: 00-04: 00" ya da benzerini kullanmalıdır.
RobG

1
"24 Eylül 2011" biçiminin doğru tarihi vereceğini gördüm. Bir açıklama için buraya bakın: stackoverflow.com/questions/2587345/javascript-date-parse
christurnerio

Yanıtlar:


98

Doğu Yaz Saati'nin -4 hoursve geri dönüş tarihinizdeki saatlerin olduğuna dikkat edin 20.

20h + 4h = 24h

2011-09-24 gece yarısı. Herhangi bir saat dilimi göstergesi olmayan yalnızca tarih içeren bir dize sağladığınız için tarih UTC (GMT) olarak ayrıştırıldı . Bunun yerine bir gösterge içermeyen bir tarih / saat dizesi ( new Date("2011-09-24T00:00:00")) vermiş olsaydınız, yerel saat diliminizde ayrıştırılmış olurdu. (Tarihsel olarak, spesifikasyonların bir kereden fazla değiştiği için değil, modern tarayıcıların iyi olması gerektiği için tutarsızlıklar olmuştur; ya da her zaman bir saat dilimi göstergesi ekleyebilirsiniz.)

Doğru tarihi alıyorsunuz, asla doğru saat dilimini belirtmediniz.

Tarih değerlerine erişmeniz gerekiyorsa getUTCDate()veya diğer getUTC*()işlevlerden herhangi birini kullanabilirsiniz :

var d,
    days;
d = new Date('2011-09-24');
days = ['Sun', 'Mon', 'Tues', 'Wed', 'Thurs', 'Fri', 'Sat'];
console.log(days[d.getUTCDay()]);

24
"Doğru saat dilimini nasıl belirlersiniz"? Tarih oluşturucu her zaman tarih dizesini UTC olarak yorumlar, ancak daha sonra saat dilimini ayarlar. `` Yeni Tarih ('2012-01-02 EDT') bile yapabilirim ve gün ışığından yararlanma için ofset uygulamak nedeniyle hala bir önceki güne geri taşıyabilirim, bu hiç mantıklı değil çünkü size söylersem tarihin bu olduğunu geçerli yerel saat dilimi saat dilimine eklenirse, buna ek bir uzaklık ofset uygulamayın. Saat diliminin EDT olduğunu söyledim ama yine de bir gün geri hareket eden ek bir ofset uyguluyor .
AaronLS

1
@AaronLS, EDTolduğu yaz saati (yaz saati olarak da bilinir) , ESTOcak ayında geçerli saat dilimidir.
zzzzBov

1
Bir dizeden sadece UTC olarak oluşturmak, yapmak istediğim şey olurdu, bu yüzden "Doğru saat dilimini nasıl belirlersiniz?" "daha önce hiç doğru saat dilimini belirtmediniz." Bunu yaparsam new Date('2012-01-01 GMT'), kullanıcının yerel tarih saatine dönüştürdüğü için hala bir uzaklık uygular.
AaronLS

7
@AaronLS, kullanmak zorunda iseniz get*yöntemleri ve sadece ofset bilinmeyen saat diliminde eklemek ofset bilinmeyen saat dilimine dahil doğru tarih / saat döndürmek gerekir: d = new Date('2013-01-08 GMT'); d.setMinutes(d.getMinutes() + d.getTimezoneOffset());Bu kullanıcı yerel ayarı için tarih normalleştirmek olacak böylece .get*yöntemleri dönüş beklenen değer. Bu durumda .getUTC*yöntemler yanlış olacaktır, bu yüzden dikkatli olun.
zzzzBov

1
Referans sağlamak için davranışı tanımlamak ve uygulayıcılar bir şeyi doğru bir şekilde uygulayamadığında bunu kaçış olarak kullanmak arasında bir fark vardır. Ve bu değil veri beklentileri hizaya etmezse aynı temsili.
Muhalif Öfke

252

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)

12
Bu bana en iyi şekilde yardımcı oldu. Yeni bir tarih oluşturduğumda verilerimin sonuna .replace (/ - / g, '\ /'). Replace (/ T. + /, '') Ekledim. Süper kolay!
Devin Prejean

64
Vay canına - javascript çok tutarsız.
psparrow

2
.Replace () çağrıları bu akşam bir tutam gerçekten yardımcı oldu.
kullanmama

2
evet ben hepsini test ettim, ve bu gerçekten garip.
chintan adatiya

27
Tüm bunlar ISO 8601'i izlemeye çalışan temel Date.parse () davranışından kaynaklanır. Tarih dizesi yyyy-mm-dd biçimini izlediğinde, örtük UTC 00:00 ile ISO 8601 olduğu varsayılır. Dize biçimden saptığında (ör. Tire yerine mm-dd-yyyy veya eğik çizgi), saat dilimi olmadığında yerel saati kullanan RFC 2822'ye göre gevşek ayrıştırıcıya geri döner. Kuşkusuz, bu ortalama bir kişiye oldukça gizemli olacaktır.
Mizstik

71

Tarihi normalleştirmek ve istenmeyen ofseti ortadan kaldırmak için (burada test edilmiştir: https://jsfiddle.net/7xp1xL5m/ ):

var doo = new Date("2011-09-24");
console.log(  new Date( doo.getTime() + Math.abs(doo.getTimezoneOffset()*60000) )  );
// Output: Sat Sep 24 2011 00:00:00 GMT-0400 (Eastern Daylight Time)

Bu aynı şeyi @tpartee'ye de uygular (burada test edilir: https://jsfiddle.net/7xp1xL5m/1/ ):

var doo = new Date("2011-09-24");
console.log( new Date( doo.getTime() - doo.getTimezoneOffset() * -60000 )  );

Bu benim için yaptı - Ben bir API tarihleri ​​ile çalışmak zorunda sonra bunları sıralamak / karşılaştırmak, böylece sadece saat dilimi ofset eklemek en iyi çalışır.
chakeda

Bu benim için çalıştı hariç ben timeZoneOffset çıkarmak zorunda, eklemek değil
ErikAGriffin

@ErikAGriffin Olumlu bir saat diliminde misiniz, GMT-0X00 yerine IE GMT + 0X00'de misiniz?
AaronLS

Benzer bir şey yaptım:doo.setMinutes(doo.getMinutes() + doo.getTimezoneOffset())
Muhalif Öfke

2
@AaronLS Doğru yoldasınız ama biraz yanlış mantık. TZ ofsetini telafi etmek için doğru mantık: console.log (yeni Tarih (doo.getTime () - doo.getTimezoneOffset () * -60000)); - Dengenin işareti önemlidir ve kesinleştirilemez, ancak düzeltme için ters işarete de ihtiyacınız vardır, bu nedenle ters işaretin uygulanması için ofseti -60000 ile çarpıyoruz.
tpartee

28

Yerel saat diliminde bir tarihin 0 saatini almak istiyorsanız, tek tek tarih bölümlerini Dateyapıcıya iletin.

new Date(2011,08,24); // month value is 0 based, others are 1 based.

26

Görünüşe göre dizenin sonuna bir boşluk eklemenin oluşturma için UTC kullanacağını eklemek istiyorum.

new Date("2016-07-06")
> Tue Jul 05 2016 17:00:00 GMT-0700 (Pacific Daylight Time)

new Date("2016-07-06 ")
> Wed Jul 06 2016 00:00:00 GMT-0700 (Pacific Daylight Time)

Edit: Bu önerilen bir çözüm değil, sadece alternatif bir cevap. Ne olduğunu çok açık olmadığı için lütfen bu yaklaşımı kullanmayın. Birisinin bunu yanlışlıkla bir hataya neden olarak yeniden düzenleyebilmesinin birkaç yolu vardır.


Sonunda boşluk bulunan örnek için, konsol "Geçersiz Tarih = $ 2"
Brian Risk

1
çok iyi çalışıyor! yeni Tarih (data.Date + "") .toLocaleDateString ("en-US")
Nakres

Adil olmak gerekirse, bu sadece alternatif bir cevaptı ve önerilen bir çözüm değil.
Kyle Shrader

25

Zaman dilimi ayarlamasıyla ilgili olduğuna inanıyorum. Oluşturduğunuz tarih GMT ve varsayılan saat gece yarısıdır, ancak saat diliminiz EDT'dir, bu nedenle 4 saat çıkarır. Doğrulamak için şunu deneyin:

var doo = new Date("2011-09-25 EDT");

3
Buradaki en iyi cevap bu. Programlı dönüştürme yerine yerleşik saat dilimi yerelleştirme dizelerini kullanmak için + 1 milyon.
blearn

2
Bu yardımcı olur. Şöyle çalışır: $ scope.dat = new Date (datestring + 'EDT'). EDT ve EST arasındaki farka dikkat edin: link
Weihui Guo

Perde arkasında neler olduğunu bilmiyorum, ama mükemmel çalışıyor.
the_haystacker

Bu en basit cevaplar ve daha az kod yeniden biçimlendirme olduğunu söyleyebilirim.
Michael

Teşekkürler, benim için en iyi yolu düşünüyorum.
Janderson Constantino

11

Sorununuz özellikle saat dilimiyle ilgilidir. Not bölüm GMT-0400- GMT'nin 4 saat gerisindesiniz. Görüntülenen tarihe / saate 4 saat eklerseniz, 2011/09/24 tam gece yarısı alırsınız. kullanımtoUTCString() GMT dizesini almak yerine yöntemi:

var doo = new Date("2011-09-24");
console.log(doo.toUTCString());

7

Bu muhtemelen iyi bir cevap değil, ama sadece bu sorunla ilgili deneyimimi paylaşmak istiyorum.

Uygulamam küresel olarak 'YYYY-AA-GG' biçiminde utc tarihini kullanıyor, kullandığım tarih seçici eklentisi sadece js tarihini kabul ederken, hem utc hem de js'yi düşünmek benim için zor. Bu yüzden 'YYYY-AA-GG' biçimli tarihi datepicker'ıma aktarmak istediğimde, önce moment.js veya istediğinizi kullanarak 'MM / DD / YYYY' biçimine dönüştürüyorum ve datepicker'da tarih gösteriyor doğru. Örneğiniz için

var d = new Date('2011-09-24'); // d will be 'Fri Sep 23 2011 20:00:00 GMT-0400 (EDT)' for my lacale
var d1 = new Date('09/24/2011'); // d1 will be 'Sat Sep 24 2011 00:00:00 GMT-0400 (EDT)' for my lacale

Görünüşe göre d1 istediğim şey. Bu bazı insanlar için yararlı olacağını umuyoruz.


1
Sadece sizin yaptığınız gibi formatları değiştirmek benim için aynı şekilde çalıştı. Çok garip.
jAC

5

Bu benim için bir döngü için, zzzBov'un cevabında +1. UTC yöntemlerini kullanarak benim için çalışan bir tarihin tam dönüşümü:

//myMeeting.MeetingDate = '2015-01-30T00:00:00'

var myDate = new Date(myMeeting.MeetingDate);
//convert to JavaScript date format
//returns date of 'Thu Jan 29 2015 19:00:00 GMT-0500 (Eastern Standard Time)' <-- One Day Off!

myDate = new Date(myDate.getUTCFullYear(), myDate.getUTCMonth(), myDate.getUTCDate());
//returns date of 'Fri Jan 30 2015 00:00:00 GMT-0500 (Eastern Standard Time)' <-- Correct Date!

4

Bunun anlamı 2011-09-24 00:00:00 GMT, ve Bulndğnz beri GMT -4, öyle olacak 20:00önceki gün.

Şahsen anladım 2011-09-24 02:00:00çünkü yaşıyorum GMT +2.


3

OP durumunda saat dilimi EDT olmasına rağmen, komut dosyanızı yürüten kullanıcının EDT saat diliminde olacağının garantisi yoktur, bu nedenle ofseti kodlamak mutlaka çalışmaz. Bulduğum çözüm, tarih dizesini böler ve Tarih yapıcısında ayrı değerleri kullanır.

var dateString = "2011-09-24";
var dateParts = dateString.split("-");
var date = new Date(dateParts[0], dateParts[1] - 1, dateParts[2]);

Başka bir JS tuhaflığı parçasını hesaba katmanız gerektiğini unutmayın: ay sıfır tabanlıdır.


2

Müşterimin Atlantik Standart Saati'nde olduğu bu sorunla karşılaştım. İstemcinin aldığı tarih değeri "2018-11-23" idi ve kod new Date("2018-11-23")istemcinin çıktısına geçtiğinde önceki gün içindi. Snippet'te gösterildiği gibi, tarihi normalleştiren ve istemciye beklenen tarihi veren bir yardımcı program işlevi oluşturdum.

date.setMinutes(date.getMinutes() + date.getTimezoneOffset());

var normalizeDate = function(date) {
  date.setMinutes(date.getMinutes() + date.getTimezoneOffset());
  return date;
};

var date = new Date("2018-11-23");

document.getElementById("default").textContent = date;
document.getElementById("normalized").textContent = normalizeDate(date);
<h2>Calling new Date("2018-11-23")</h2>
<div>
  <label><b>Default</b> : </label>
  <span id="default"></span>
</div>
<hr>
<div>
  <label><b>Normalized</b> : </label>
  <span id="normalized"></span>
</div>


2

yalnızca tarihin belirli bölümlerinin görüntüleme amacıyla aynı kalmasını sağlamak istiyorsanız, * saat dilimimi değiştirdiğimde bile bu işe yarıyor gibi görünüyor:

var doo = new Date("2011-09-24 00:00:00")

oraya sıfırları ekleyin.

Kodumda bunu:

let dateForDisplayToUser = 
  new Date( `${YYYYMMDDdateStringSeparatedByHyphensFromAPI} 00:00:00` )
  .toLocaleDateString( 
    'en-GB', 
    { day: 'numeric', month: 'short', year: 'numeric' }
  )

Ve bilgisayarımda saat dilimimi değiştiriyorum ve tarih API'dan aldığım yyyy-aa-gg tarih dizesiyle aynı kalıyor.

Ama bir şey mi kaçırıyorum / bu kötü bir fikir mi?

* en azından kromda. Bu Safari'de çalışmıyor! bu yazı itibariyle


Bunu yaptığınızda .toISOString(), 1 gün geri gider.
vivek_23

new Date('2019/11/18 05:30:00').toISOString();benim için çalıştı
vivek_23

1

Daha fazla dönüşüm yöntemi kullanmadan bunu halletmenin en iyi yolu,

 var mydate='2016,3,3';
 var utcDate = Date.parse(mydate);
 console.log(" You're getting back are 20.  20h + 4h = 24h :: "+utcDate);

Şimdi tarihinize GMT ekleyin veya ekleyebilirsiniz.

 var  mydateNew='2016,3,3'+ 'GMT';
 var utcDateNew = Date.parse(mydateNew);
 console.log("the right time that you want:"+utcDateNew)

Canlı: https://jsfiddle.net/gajender/2kop9vrk/1/


1

Böyle bir sorunla karşılaştım. Ama benim sorun veritabanından tarih alırken kapalı ayarlandı.

bu veritabanına konur ve UTC biçimindedir.

2019-03-29 19: 00: 00.0000000 +00: 00

Yani ben veritabanından almak ve tarihi kontrol zaman onunla ofset ekliyor ve javascript geri göndermek.

resim açıklamasını buraya girin

+05: 00 ekliyor çünkü bu benim sunucu saat dilimim. Müvekkilim farklı saat diliminde +07: 00.

2019-03-28T19: 00: 00 + 05: 00 // javascript'te aldığım şey bu.

İşte bu konuda yaptığım çözüm.

var dates = price.deliveryDate.split(/-|T|:/);
var expDate = new Date(dates[0], dates[1] - 1, dates[2], dates[3], dates[4]);
var expirationDate = new Date(expDate);

Böylece tarih sunucudan gelip sunucu ofset var böylece tarih bölmek ve sunucu ofset kaldırmak ve sonra tarihe dönüştürmek. Sorunumu çözdü.


1

bunun için basit bir çözüme ihtiyacınız varsa bkz:

new Date('1993-01-20'.split('-')); 

resim açıklamasını buraya girin


0

Bu sayfaya göre tarihin UTC saat dilimi kullanılarak oluşturulmasına neden olan ISO tarih dizesi biçimini kullanıyorsunuz:

Not: Tarih dizelerinin Tarih yapıcısı ile ayrıştırılması (ve Date.parse, eşdeğerdir) tarayıcı farklılıkları ve tutarsızlıkları nedeniyle önerilmez. RFC 2822 biçimindeki dizeler için destek yalnızca kural gereğidir. ISO 8601 biçimleri desteği, yalnızca tarih dizelerinin (ör. "1970-01-01") yerel olarak değil UTC olarak değerlendirilmesinden farklıdır.

Metni farklı şekilde biçimlendirirseniz, "Jan 01 1970"(en azından makinemde) yerel saat diliminizi kullanır.


0

Bu konuya 2 sent eklemeye çalışıyorum (@ paul-wintz cevabında detaylandırılıyor).

Bana, Tarih yapıcısı ISO 8601 formatının (tarih kısmı) ilk kısmı ile eşleşen bir dize aldığında, UTC zaman diliminde 0 zaman ile kesin bir tarih dönüşümü yaptığını söylüyor. Bu tarih yerel saate dönüştürüldüğünde, gece yarısı UTC'nin yerel saat diliminde daha erken bir tarih olması durumunda bir tarih kayması oluşabilir.

new Date('2020-05-07')
Wed May 06 2020 20:00:00 GMT-0400 (Eastern Daylight Time)

Tarih dizesi başka bir "gevşek" biçimdeyse ("/" kullanırsa veya tarih / ay sıfırla doldurulmazsa) yerel saat diliminde tarihi oluşturur, dolayısıyla tarih kaydırma sorunu olmaz.

new Date('2020/05/07')
Thu May 07 2020 00:00:00 GMT-0400 (Eastern Daylight Time)
new Date('2020-5-07')
Thu May 07 2020 00:00:00 GMT-0400 (Eastern Daylight Time)
new Date('2020-5-7')
Thu May 07 2020 00:00:00 GMT-0400 (Eastern Daylight Time)
new Date('2020-05-7')
Thu May 07 2020 00:00:00 GMT-0400 (Eastern Daylight Time)

Bu durumda, yukarıda belirtildiği gibi hızlı bir düzeltme, yalnızca ISO biçimli Tarih dizenizde "-" yerine "/" koymaktır.

new Date('2020-05-07'.replace('-','/'))
Thu May 07 2020 00:00:00 GMT-0400 (Eastern Daylight Time)

0

yyyy-mm-ddMySql Tarih biçiminde saklamak için aşağıdakileri yapmanız gerekir:

const newDate = new Date( yourDate.getTime() + Math.abs(yourDate.getTimezoneOffset()*60000) );
console.log(newDate.toJSON().slice(0, 10)); // yyyy-mm-dd

-1

Günlük saatiniz GMT verir, böylece saat diliminizi belirtmek istersiniz:

var doo = new Date("2011-09-24 EST");

3
Bu sorunun zaten çok fazla cevabı var. Soruyu yine de cevaplamak istiyorsanız, diğer cevapların vermediği yeni bir şeyden bahsetmelisiniz. Üst yanıt, saat dilimi ile ilgili sorunu çok daha ayrıntılı olarak açıklıyor.
Calvin Godfrey

Bu cevap neredeyse tamamen aynıdır stackoverflow.com/a/7556642/8828658
Bir taş örümCek

Açıklamasının daha derin olup olmadığını kim takar ... kodu hala benimkinden farklıdır. Benimki çok daha basit. Ve evet doğru taş arachnid. Benim hatam.
bmacx7

-3

nevermind, tarihin dün olmasına neden olan GMT -0400'ü fark etmedi

Varsayılan bir "saati" 12:00:00 olarak ayarlamayı deneyebilirsiniz


Evet, cevabımla biraz hızlıydım, bunun için üzgünüm. Cevabımı gözden geçirdim.
ChrisH

-3

Aşağıdakiler benim için çalıştı -

    var doo = new Date("2011-09-24").format("m/d/yyyy");

Saat dilimiyle uğraşmadığınız sürece hala çalışmaz.
Gar
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.