【问题标题】:Get YEAR, MONTH and DAY with AngularJS使用 AngularJS 获取年、月和日
【发布时间】:2016-07-14 17:15:00
【问题描述】:

我需要从来自后端的特定日期获取年、月和日期。如何在前端控制器上做到这一点?

谢谢!

【问题讨论】:

  • 你写代码。也许如果您向我们展示了您的尝试,最好以minimal reproducible example 的形式展示,我们或许可以提供帮助。但是这个问题已经被问过很多次了,所以你会想说你的问题与那些有什么不同。

标签: angularjs date frontend


【解决方案1】:

假设来自后端的日期的变量名称是D

你可以这样做:

var date = new Date(D);
var year = date.getFullYear();
var month = date.getMonth();
var day = date.getDay();

【讨论】:

  • 如果D 是像"09/08/2012" 这样的字符串?月份应该是多少?使用您的代码的结果将取决于浏览器、用户的操作系统以及该操作系统中的区域设置。
【解决方案2】:

示例
在您的 HTML 中
<div>site design / logo © {{copyright | date:'yyyy'}} Stack Exchange Inc</div>

在您的 AngularJS 控制器中

    $scope.copyright = new Date();

输出将是

/*site design / logo © 2019 Stack Exchange Inc; */

回答您的问题
控制器

$scope.dateVariable = new Date();

查看年份

{{dateVariable | date:'yyyy'}}

查看月份

{{dateVariable | date:'MM'}}

查看 Day

{{dateVariable | date:'dd'}}

有关更多选项,例如获取完整日期、显示日期的不同方式、获取时间以及获取不同事物的选项/显示日期项的方式
一般语法是

{{ date | date : format : timezone }}

并且可以找到输出选项列出herehere

【讨论】:

    【解决方案3】:

    在 AngularJS(不是 Angular 2+)中,您可以使用 date filter。这将根据提供的格式将日期格式化为给定的字符串。根据您的情况,您可以使用以下内容:

    {{ createdDate | date : ['yyyy'] }} // this will give a 4 digit representation of the year
    
    {{ createdDate | date : ['MMM'] }}  // month in year (January-December)
    
    {{ createdDate | date : ['d'] }} // day in month (1-31)
    

    Link 在 Plunker 上演示

    【讨论】:

      猜你喜欢
      • 2014-05-24
      • 2016-04-14
      • 2011-04-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多