gpt4 book ai didi

javascript - 如何从 bootstrap-datepicker 获取 UTC 时间戳?

转载 作者:行者123 更新时间:2023-12-02 03:25:32 29 4
gpt4 key购买 nike

如何让 bootstrap-datepicker 返回 UTC 时间戳而不是基于用户时区的时间戳?

我正在使用 bootstrap-datepicker 的 1.8.0 版本

以下示例显示选择日期时 bootstrap-datepicker 返回的时间戳:

HTML

<div class="container">
<div class="row">
<div class="col-sm-6">
<div class="input-group date">
<input type="text" class="form-control" id="js-date">
<div class="input-group-addon">
<span class="glyphicon glyphicon-th"></span>
</div>
</div>
</div>
</div>
<div class="row">
<span id="timestamp-output"></span>
</div>
</div>

JavaScript

$(document).ready(function() {
$('#js-date').datepicker();
});

$('#js-date').datepicker().on('changeDate', function (ev) {
$('#timestamp-output').text(ev.date.getTime());
});

fiddle 示例

bootstrap-datepicker example

输出

当您运行示例并选择日期 11/29/2018 时,显示的时间戳为 1543478400000,对应于:

GMT: Thursday, November 29, 2018 8:00:00 AM

我需要的是它返回时间戳 1543449600000,它对应于:

GMT: Thursday, November 29, 2018 12:00:00 AM

摘要

bootstrap-datepicker 中有为此的配置选项吗?或者也许有一些可靠的方法将返回的本地化时间戳转换为 UTC 时间戳?

最佳答案

您可能想查看Moment.js已更新我将本地时间戳转换为 UTC 时间戳。

$(document).ready(function() {
$('#js-date').datepicker();
});

$('#js-date').datepicker().on('changeDate', function (ev) {

var datetime = new Date(ev.date.getTime());
// Convert local timestamp to UTC timestamp
var local = moment(datetime).valueOf();
var utc = (moment(datetime).add(-(moment().utcOffset()), 'm'));
utc = moment.parseZone(utc).utc().valueOf();

$('#timestamp-local').text('Local Timestamp is ' + local);
$('#timestamp-utc').text('UTC Timestamp is ' + utc);

console.log('UTC Offset is ' + moment().utcOffset());
});
<script src="https://rawgit.com/moment/moment/2.22.2/min/moment.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datepicker/1.8.0/js/bootstrap-datepicker.js"></script>

<div class="container">
<div class="row">
<div class="col-sm-6">
<div class="input-group date">
<input type="text" class="form-control" id="js-date">
<div class="input-group-addon">
<span class="glyphicon glyphicon-th"></span>
</div>
</div>
</div>
</div>
<div class="row">
<span id="timestamp-local"></span><br/>
<span id="timestamp-utc"></span>
</div>
</div>

关于javascript - 如何从 bootstrap-datepicker 获取 UTC 时间戳?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53547812/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com