了解时区检测
检测用户的时区在根据本地时间首选项自定义 Web 应用程序中起着至关重要的作用。本文探讨了实现时区检测的各种方法,特别解决了语法 -new Date().getTimezoneOffset()/60.
通过浏览器确定时区
语法带来的混乱。一种流行的方法涉及利用浏览器的内置功能。通过利用 jstimezoneDetect 等库,您可以直接从浏览器确定客户端的时区。 jstz.define() 函数返回一个包含检测到的时区的对象,然后您可以在服务器端处理该对象。
示例代码:
<code class="javascript">$(document).ready(function(){ var tz = jstz.determine(); // Determines the time zone of the browser client var timezone = tz.name(); //For e.g.:"Asia/Kolkata" for the Indian Time. $.post("url-to-function-that-handles-time-zone", {tz: timezone}, function(data) { //Preocess the timezone in the controller function and get //the confirmation value here. On success, refresh the page. }); });</code>
理解 -new Date().getTimezoneOffset()/60
此语法表示一种过时的时区检测方法。 getTimezoneOffset() 方法返回本地时间和 UTC(协调世界时)之间的分钟数。将该值除以 60 即可得到时区偏移量(以小时为单位)。但是,此方法有局限性,因为它假设用户的时区在浏览器中正确设置,并且不考虑夏令时。
以上是为什么“-new Date().getTimezoneOffset()/60”是过时的时区检测方法?的详细内容。更多信息请关注PHP中文网其他相关文章!