首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何以角度显示带时区的日期时间

如何以角度显示带时区的日期时间
EN

Stack Overflow用户
提问于 2022-07-22 17:02:12
回答 2查看 588关注 0票数 -1

我正在使用下面的代码在我的角度应用程序显示日期时间与时区。它显示,2022年7月22日12:36:52格林尼治时间-4我想用特定的时区代替GMT-4,比如EDT或PST或CST。

我使用以下代码,

代码语言:javascript
复制
@Component({
    selector: '',  
    styleUrls: [''],
    templateUrl: '',
    providers: [DatePipe]
})

public class Test {
    clock;
    constructor() {
    this.clock = this.datePipe.transform(new Date(), 'MMMM d, y h:mm:s z');
    }
}
EN

回答 2

Stack Overflow用户

发布于 2022-07-23 05:17:18

您可以这样使用管道/自定义管道:

script.js:

代码语言:javascript
复制
var toUTCDate = function(date){
    var _utc = new Date(date.getUTCFullYear(), date.getUTCMonth(), date.getUTCDate(),  date.getUTCHours(), date.getUTCMinutes(), date.getUTCSeconds());
    return _utc;
  };
  
  var millisToUTCDate = function(millis){
    return toUTCDate(new Date(millis));
  };
  
  var tzOffsetMillis = function(){
  var date = new Date();
  var offsetMinutes = date.getTimezoneOffset();
  var offsetMillis = offsetMinutes * 60000;
  }
  
    $scope.toUTCDate = toUTCDate;
    $scope.millisToUTCDate = millisToUTCDate;
    $scope.tzOffsetMillis = tzOffsetMillis;

index.html:

代码语言:javascript
复制
<body>
   <div ng-controller="ctrl">
      <div>
         utc: {{millisToUTCDate(1400167800 * 1000) | date:'dd-M-yyyy H:mm Z'}}
      </div>
      <div>
         local: {{(1400167800 * 1000) | date:'dd-M-yyyy H:mm Z'}}
      </div>
      <div>
         alt UTC: {{(1400167800 * 1000 + tzOffsetMillis()) | date:'dd-M-yyyy H:mm Z'}}
      </div>
   </div>
</body>

参考:https://plnkr.co/edit/eLwnLZReCy8HXtJyO84q?p=preview&preview

票数 0
EN

Stack Overflow用户

发布于 2022-07-25 15:10:55

代码语言:javascript
复制
const timeZoneAbbreviated = () => {
  const { 1: tz } = new Date().toString().match(/\((.+)\)/);

  // In Chrome browser, new Date().toString() is
  // "Thu Aug 06 2020 16:21:38 GMT+0530 (India Standard Time)"

  // In Safari browser, new Date().toString() is
  // "Thu Aug 06 2020 16:24:03 GMT+0530 (IST)"

  if (tz.includes(" ")) {
    return tz
      .split(" ")
      .map(([first]) => first)
      .join("");
  } else {
    return tz;
  }
};

console.log("Time Zone:", timeZoneAbbreviated());
// IST
// PDT
// CEST
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73083771

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档