是否有任何JavaScript库,我可以使用它来检查在特定地点的某一特定时间内,日照节约是否有效。
例如,我想知道一个日期,在时区代码中写着“7月1日05:30:00 UTC+0500 2009”,例如110,如果日照节约有效的话。补充信息总是可以接受的。
时区代码可以在这里找到- http://msdn.microsoft.com/en-us/library/bb887715.aspx
谢谢你提前帮忙。
大家好!
发布于 2013-11-06 15:31:07
Javascript对CRM时区代码一无所知。
甚至没有任何好的JavaScript库可以使用Windows标识符,比如在使用来自.NET的TimeZoneInfo或浏览您的.NET注册表时所能找到的那些。
如果需要使用JavaScript中的时区,则需要转换为IANA/Olson时区标识符,然后使用一个of the libraries I mentioned here。
如果可以在服务器上使用.NET,则可以使用this method将客户关系管理时区Id转换为Windows时区Id。然后,您可以使用this method将Windows转换为IANA时区。但是如果你要在服务器上做那么多的工作,我不明白你为什么不只是在那里进行数据转换。
如果您正在寻找一个将直接从CRM时区If工作的纯JavaScript解决方案,我很抱歉,但据我所知,它并不存在。您必须自己构建它,并在时区数据更改时维护它。
发布于 2013-11-06 03:15:30
当给定一个时区作为输入时,这将返回true或false:
function stdTimezoneOffset() {
var d = new Date();
var jan = new Date(d.getFullYear(), 0, 1);
var jul = new Date(d.getFullYear(), 6, 1);
return Math.max(jan.getTimezoneOffset(), jul.getTimezoneOffset());
}
function dst(offset) {
var d = new Date(); // create Date object for the current location
var utc = d.getTime() + (d.getTimezoneOffset() * 60000); // get UTC time in milliseconds
var nd = new Date(utc + (3600000 * offset)); // Create net Date() for city with offset
return d.getTimezoneOffset() < stdTimezoneOffset();
}
alert(dst('-5.0')); //New Yorkhttps://stackoverflow.com/questions/19790816
复制相似问题