关于javascript:javascript – 检查日光时间是否对不同的时区有效

javascript - check if daylight time is in effect for different timezone

javascript中有许多解决方案可以检查日期是否在白天[如何检查DST(夏令时)是否有效以及它是否是偏移量?]。

但是,只有当某人处于适用日光效果的同一时区时,该解决方案才有效,
恩。 假设我当前的浏览器(客户端)是IST(印度标准 - 没有日光时间变化),我想检查日期是否在日光下是否为ET(东部时间 - 日光为-5,标准是 - 4)。 只有当我的系统时区在ET而不是IST时,上面的解决方案(来自链接)才会给我正确的结果。

我怎么计算呢?


如果你使用moment.js和它的伴侣timezome脚本,他们会很容易检查DST:

查看他们的isDST()文档

只是为了笑容,这是一个测试每个时区的小提琴

1
2
3
4
5
6
if( moment.tz("America/New_York").isDST() ){
    $('#test').append('NY is currently in DST');
}
else{
    $('#test').append('NY is NOT currently in DST');
}
1
2
3
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js">
<script src="http://cdnjs.cloudflare.com/ajax/libs/moment.js/2.8.3/moment.min.js">
<script src="http://momentjs.com/downloads/moment-timezone-with-data.min.js">