SORU
9 AĞUSTOS 2012, PERŞEMBE


Eğer bir kaç saat için ise eğer gün Işığından yararlanma Saati geçerli olup olmadığını kontrol edin ve

JavaScript kullanarak nasıl eğer gün Işığından yararlanma Saati (DST) şu anda kullanımda olup olmadığını ve varsa kaç saat için ise kontrol edebilirim?

Bu kendisi için bu gereklidir js kodumu biraz

var secDiff=Math.abs(Math.round((utc_date-this.premiere_date)/1000));
this.years=this.calculateUnit(secDiff,(86400*365));
this.days=this.calculateUnit(secDiff-(this.years*(86400*365)),86400);
this.hours=this.calculateUnit((secDiff-(this.years*(86400*365))-(this.days*86400)),3600);
this.minutes=this.calculateUnit((secDiff-(this.years*(86400*365))-(this.days*86400)-(this.hours*3600)),60);
this.seconds=this.calculateUnit((secDiff-(this.years*(86400*365))-(this.days*86400)-(this.hours*3600)-(this.minutes*60)),1);

Datetime önce almak istiyorum, ama eğer DST kullanılıyorsa, o zaman bu tarihler 1 saat yanlış, bu benim sorunum. Eğer DST kullanımda olup olmadığını kontrol etmek için nasıl bilmiyorum.

Nasıl gün ışığından yararlanma başlar ve biter? <--- bu bana yardımcı olabilir diye düşünüyorum. Sadece bulamıyorum.

CEVAP
9 AĞUSTOS 2012, PERŞEMBE


Kodu this article tarafından verilen Yaz Saati yürürlükte olup olmadığını söyleyecektir. GetTimezoneOffset DST ve standart saat boyunca farklı bir değer döndürür gerçeği kullanır, ve bu ikisi arasındaki farkı karşılaştırır. (örneğin New York -5 normalde ve DST sırasında -4 verir)

Uluslararası saat dilimleri inceliklerini konusunda hiçbir fikrim yok, ve benim tek zaman dilimi için doğru sonuç verir test var ama kod iyi görünüyor unutmayın.

var today = new Date();
if (today.dst()) { alert ("Daylight savings time!"); }

Date.prototype.stdTimezoneOffset = function() {
    var jan = new Date(this.getFullYear(), 0, 1);
    var jul = new Date(this.getFullYear(), 6, 1);
    return Math.max(jan.getTimezoneOffset(), jul.getTimezoneOffset());
}

Date.prototype.dst = function() {
    return this.getTimezoneOffset() < this.stdTimezoneOffset();
}

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • GUN-TIME with Brandon

    GUN-TIME wit

    3 ŞUBAT 2009
  • undrmyumbrellaa

    undrmyumbrel

    25 Temmuz 2012
  • JeezyVEVO

    JeezyVEVO

    12 Mayıs 2009