如何设置 javascript 全球时区

How to set javascript global timezone

我当前的时区在 IST,我希望它是动态的,例如,如果我在我的数据库中将我的时区设置为 PST,那么我需要将它设置为 javascript,每当我尝试创建日期对象时,它应该return 太平洋标准时间。

在不浪费太多时间的情况下,我想知道是否可以,如果可以的话,有什么可能吗?

无论如何我在 time_zone_offset 中都有这个功能,它的 returning 时间比 UTC 早 5 小时,我的系统时区比 UTC +5.5 date 只有 2 分钟。之前但它 returning 10 小时前

var currentDate = new Date(new Date().getTime()); // local system date
                var timezoneOffset = time_zone_offset;

                //Convert current dateTime into UTC dateTime
                var utcDate = new Date(currentDate.getTime() + (timezoneOffset * 60000));
                //console.log(utcDate);               

                //Convert date string (2015-02-02 07:12:13) in date object
                var t = date.split(/[- :]/);
                var today = new Date();
                // Apply each element to the Date function
                var date = new Date(t[0], t[1]-1, t[2], t[3], t[4], t[5]);
                //date = new Date(date);
                var dateDiff        = Math.floor((utcDate.getTime()/1000)) - Math.floor((date.getTime()/1000));                  
                var formatedDate    = '';
                var time            = '';
                var fullDays        = Math.floor(dateDiff/(60*60*24));
                var fullHours       = Math.floor((dateDiff-(fullDays*60*60*24))/(60*60));
                var fullMinutes     = Math.floor((dateDiff-(fullDays*60*60*24)-(fullHours*60*60))/60);
                var fullSeconds     = Math.floor((dateDiff-(fullDays*60*60*24)-(fullHours*60*60)-(fullMinutes*60)));
                var dayArray        = new Array('Monday','Tuesday','Wednesday','Thursday','Friday','Saturday','Sunday');
                var monthArray      = new Array('Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Nov','Dec');
                //console.log(dateDiff);

                date = new Date(date.getTime() - (timezoneOffset * 60000));

                if(fullDays > 2){
                    //var dt = new Date(date*1000);
                    time = monthArray[date.getMonth()]+' '+date.getDate()+' at '+formatAMPM(date);
                } else if(fullDays == 2){
                    time = '2 days';
                } else if(today.getDate() > t[2]){
                    time = 'Yesterday at '+formatAMPM(date);
                } else if(fullHours > 0) {
                    time = fullHours + ' hours';
                    if(fullHours == 1) {
                        time = fullHours + ' hour';
                    }
                } else if(fullMinutes > 0) {
                    time = fullMinutes + ' mins';
                    if (fullMinutes == 1) {
                        time = fullMinutes + ' min';
                    }
                } else {
                    time = 'Just now';
                }
                return time;

如果我要经常处理客户端时区,我会使用 Moment.js and Moment Timezone。普通的 JS 日期很痛苦。

这是一个很大的库,所以如果它只是一次性的东西,最好不要使用它,只需从服务器发送时区并用用户的客户端时区偏移它