【问题标题】:How to get formatted date using moment.js and convert it into timestamp using angularjs如何使用 moment.js 获取格式化日期并使用 angularjs 将其转换为时间戳
【发布时间】:2017-02-02 15:27:08
【问题描述】:

我有一个应用程序,我需要在 UI 中显示日期,例如 DD-MM-YYYY hh:mm:ss,并再次将此日期显示为时间戳。

我尝试过的:

$scope.dateForUI = moment().format("DD-MM-YYYY hh:mm:ss");

在这里,我得到了预期的结果。但我也需要 $scope.dateForUI 的时间戳。所以我试过了

$scope.dateInTimestamp = moment().unix($scope.get_date_line);

但控制台输出在$scope.dateInTimestamp 中显示1970 日期

我的问题是如何格式化当前日期并将其分配给变量,以及如何获取此特定时间的时间戳。

另一件事是可以使用moment.js 将任何时区的时间存储到我的$scope.dateForUI 变量中吗?我需要在每个浏览器位置显示 IST 时间。

moment.js 非常新,任何帮助将不胜感激。提前致谢。

【问题讨论】:

    标签: angularjs datetime timestamp momentjs


    【解决方案1】:

    试试这个:

    $scope.dateInTimeStamp = moment().unix();
    

    【讨论】:

    • 返回 1486049689
    • 完整的时间戳将使用moment().valueOf()返回
    • 我已将对象格式化为 $scope.dateForUI = moment().format("DD-MM-YYYY hh:mm:ss"); Mozzila 对此有意见。
    • 请在您的答案中添加解释,换句话说,要更具描述性,仅代码答案并没有太大帮助。
    【解决方案2】:

    您可以使用moment-timezone 获取固定时区的值。例如:

    moment.tz("Asia/Kolkata")
    

    使用moment.unix(Number) 获取自 Unix 纪元以来秒的时刻对象

    此外,您可以使用valueOf() 从时刻对象获取自 Unix 纪元以来的毫秒数,并使用 .unix() 获取秒数。

    这里有一个 sn-p 来展示时刻时区的工作原理以及如何使用unix()

    // basic angular mock
    var $scope = {};
    // Current time in India (moment object)
    var momNow = moment.tz("Asia/Kolkata");
    // Current time in India formatted (string)
    $scope.dateForUI = momNow.format("DD-MM-YYYY HH:mm:ss");
    // Current time in India as seconds from 1970 (number)
    $scope.dateInTimestamp = momNow.unix();
    
    console.log($scope.dateForUI);
    console.log($scope.dateInTimestamp);
    <script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.17.1/moment.min.js"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/moment-timezone/0.5.7/moment-timezone-with-data-2010-2020.min.js"></script>

    【讨论】:

    • 这里的数字是多少?
    • Number自 Unix 纪元以来的秒数,请参阅文档中的链接示例。如果我理解得很好,$scope.get_date_line 是您代码中的数字。
    • Firefox 有什么问题?无论如何,我已经编辑了我的答案,包括一个实时 sn-p,试图更清楚地展示时刻时区的工作方式。
    猜你喜欢
    • 1970-01-01
    • 2020-01-25
    • 2020-02-24
    • 1970-01-01
    • 2016-11-26
    • 2015-08-09
    • 2012-04-28
    • 1970-01-01
    • 2015-08-14
    相关资源
    最近更新 更多