如何使用javascript将时间戳字符串转换为本地时间?

如何使用javascript将时间戳字符串转换为本地时间?,javascript,jquery,timezone,timestamp,Javascript,Jquery,Timezone,Timestamp,我有一个JSP页面,在该页面中,我以字符串的形式提取存储在数据库中的时间戳,格式为Thu Aug 21 2014 22:09:23 GMT+0530(印度标准时间) 当然,我可以在页面中显示它,但是我正在寻找一个javascript解决方案,它可以让我根据用户的本地时区转换这个时间戳 有办法做到这一点吗?或者对于这样的时间戳是不可能的?非常感谢您的帮助,我的问题可能听起来很傻,因为我仍然在熟悉javascript 谢谢你可以试试这个 var timezone = new Date().getTi

我有一个JSP页面,在该页面中,我以字符串的形式提取存储在数据库中的时间戳,格式为
Thu Aug 21 2014 22:09:23 GMT+0530(印度标准时间)

当然,我可以在页面中显示它,但是我正在寻找一个javascript解决方案,它可以让我根据用户的本地时区转换这个时间戳

有办法做到这一点吗?或者对于这样的时间戳是不可能的?非常感谢您的帮助,我的问题可能听起来很傻,因为我仍然在熟悉javascript

谢谢你可以试试这个

var timezone = new Date().getTimezoneOffset();

时区偏移量是UTC和 当地时间。请注意,这意味着如果 本地时区在UTC之后,如果在UTC之前,则为负。例如 如果您的时区为UTC+10(澳大利亚东部标准时间),-600 将被退回。夏令时可防止此值被忽略 即使对于给定的区域设置也是常量

还有一篇有趣的文章可以帮助您:-

编辑:


如果您打算使用AngularJS,那么将1408648665转换为2014年8月21日星期四19:17:45 GMT将更加容易和直接

    //html
    <div ng-controller="TimeCtrl">
      Date: {{timeStamp + '000' | date: 'medium'}}
    </div>

    //js
    var app = angular.module('myApp', []);
    app.controller('TimeCtrl', function time($scope) {
      $scope.timeStamp = 1408648665;
      console.log("hello");
    });
//html
日期:{{timeStamp+'000'|日期:'medium'}
//js
var-app=angular.module('myApp',[]);
应用程序控制器('TimeCtrl',功能时间($scope){
$scope.timeStamp=1408648665;
console.log(“你好”);
});

小提琴:

我自己想出来了,我能够完成我需要的。将
时间戳
从数据库传递到var
新日期(时间戳)
将其转换为本地时间,它还负责时区和偏移量。
感谢您的时间专家们!:)

谢谢你的链接,但我想这不是我要找的,我不想检测用户的时区,而是想寻找一种方法,将我的时间戳转换为javascript日期对象,可以按照本地时区呈现。谢谢你的链接,但我想这不是我要找的,我不想检测用户的时区,相反,我在寻找一种方法将我的时间戳转换为javascript日期对象,该对象可以按照本地时区呈现。@RaghvendraMishra:-更新了我的应答器。希望这就是你想要的!:)再次感谢@RT:-但我没有单独的年、月和日期,我只有一个格式为
2014年8月21日星期四22:09:23 GMT+0530(印度标准时间)的时间戳。
并希望直接将其转换为特定用户的时区设置。谢谢@admix。这并不是我所需要的。:)
    //html
    <div ng-controller="TimeCtrl">
      Date: {{timeStamp + '000' | date: 'medium'}}
    </div>

    //js
    var app = angular.module('myApp', []);
    app.controller('TimeCtrl', function time($scope) {
      $scope.timeStamp = 1408648665;
      console.log("hello");
    });