将日期从本地时区转换为UTC,然后再转换为本地时区
Converting date from Local time zone to UTC and then to local
我正在AngularJs中进行应用程序。但问题是数据库由其他人控制。他们像ISD(印度标准(一样节省了数据库中的时间。当我调用Web服务来获取这些日期时,它以字符串的形式出现,如YYYY/MM/DD HH/MM/SS示例2015/02/23 23/59/01。我有一个日期列表,我必须用这样的ng重复来显示。
<ion-item ng-repeat="item in MeIdeaList | orderBy:'-CreatedDate'" style="background-color:rgb(25, 26, 0);" ng-click="ShowIdeaDetails(item.Id)">
<div class="row">
<div class="col col-80" style="color:white">
<p> {{item.Title}}</p>
</div>
<div class="col col-20" style="color:red">
<b>{{item.Status}}</b>
</div>
</div>
<div class="row">
<div class="col col-70" style="color:white">
{{item.CreatedDate}}
</div>
<div class="col col-30">
<i class="icon ion-chevron-right icon-accessory" style="float:right;color:white"></i>
</div>
</div>
</ion-item>
现在我希望这个日期显示为本地时间,用户从那里访问数据。比如,如果我在美国,日期将来自数据库,只作为ISD。如何将此ISD转换为UTC,然后获取时区,添加或减去分钟,并在UI中向用户显示。
您还可以使用moment.js将日期从本地时间转换为utc,反之亦然。
moment('07-18-2013', 'MM-DD-YYYY').utc().format("YYYY-MM-DD HH:mm")
moment.utc('2014-02-19 05:24:32 AM').toDate();
function setDateLocal(input)
{
var date = input.split(" "); //remember input needs to be as you described.
date = date[0] + "T" + date[1].replace(/'//g, ":") + "+0000";
var ist = 19800000; //time zone is IST, which is 5.30 from UTC in milliseconds
var utcDate = new Date(Date.parse(date)-ist).toUTCString();
return new Date(Date.parse(utcDate));
}
document.body.innerHTML += setDateLocal("2015/02/23 23/59/01");
此函数将从数据库中获取输入。将其转换为时间戳,并减去5.30小时(UTC和IST之间的差值(。最后一步是将其转换为本地。
var date = input.split(" ");
date = date[0] + "T" + date[1].replace(/'//g, ":") + "+00"+":"+"00";
date=date.replace("/","-");
date=date.replace("/","-");
alert(date);
var ist = 19800000; //time zone is IST, which is 5.30 from UTC in milliseconds
var utcDate = new Date(Date.parse(date)-ist).toUTCString();
alert(utcDate);
保持日期之间的"-"和时间之间的":"很重要。
相关文章:
- 带时区的Javascript Datestring转换器
- 时刻时区.js允许我传递时区缩写并获取转换后的日期/时间
- 转换 JSON 日期,不考虑时区
- 如何将 UTC 日期时间(字符串)转换为访问者时区
- 时刻/时区 - 将日期转换为 unix
- DateTime从UTC转换为其他时区
- 时区转换
- 如何将 unix 时间戳转换为 JavaScript 日期对象(考虑时区)
- 转换一个时间(字符串),例如1:00 IST到另一个时区(比如PST)
- 如何将UTC时间字符串转换为本地时区中正确的moment.js对象
- 使用mommtjs将某个时区的时间转换为UTC
- new Date(UTCstrings),将UTCStrings转换为其他时区(非本地时区)
- 使用MomentJs显示日期时间,而无需进行时区转换
- 转换时区会产生相同的时间戳
- 如何在不转换为本地时区的情况下保持日期不变
- 将 JSON 日期时间转换为 JavaScript 日期时,它显示为比本地时区早 1 天
- 时区数据库 将gmt_offset转换为 +5:30 格式
- Javascript转换时区问题
- 使用momentjs转换时区
- 转换时区的XML解析时间和日期与moment.js