【问题标题】:i want to rewrite code in javascript?我想用javascript重写代码?
【发布时间】:2018-03-22 05:26:20
【问题描述】:

我想以简单的方式重写 Javascript 代码。谁能帮我简化这段代码?我需要一个使用 AngularJS 的更清晰的实现。需要一些建议如何重写代码:

function startTime() {
            var today = new Date();
            var D = today.getDate();
            var M = today.getMonth() + 1;
            var Y = today.getFullYear();
            var h = today.getHours();
            var m = today.getMinutes();
            var s = today.getSeconds();
            // add a zero in front of numbers<10
            m = checkTime(m);
            s = checkTime(s);

            if (document.getElementById('time'))
            {
            document.getElementById('time').innerHTML = Y + "-"+ M + "-"+ D + " "+ h + ":" + m + ":" + s;
            t = setTimeout(function () {
                startTime();
            }, 50);
            }
        }
        startTime();

上面的代码是纯 Javascript 代码,但我想用 AngularJS 编写代码。我只是在寻找一些关于如何使用 Javascript 和 AngularJS 重写代码的建议。

【问题讨论】:

  • 您使用的是哪个版本的 Angular,您可以发布到目前为止您尝试过的内容吗?
  • Javascript 日期格式不能简化那么多。我建议使用像 momentjs 这样的库来处理日期/时间的东西。至于 AngularJs,没有人可以回答如何使用 Angular 重写它。 (在任何情况下,这仅与在浏览器中显示时间有关,与日期格式部分无关)。建议你做一些 Angular 教程,然后返回一个具体的问题。
  • @seesharper angularjs' dateFilter 将处理格式化内容

标签: javascript angularjs


【解决方案1】:

基于this answer。我留下了超时 1000,如果您看到需要,您可以更改回 50,如您的代码中所示。

var module = angular.module('app', []);

module.controller('TimeCtrl', function($scope, $interval) {
  var tick = function() {
    $scope.time = Date.now();
  }
  tick();
  $interval(tick, 1000);
});
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>

<div ng-app="app">
  <div ng-controller='TimeCtrl'>
    <p ng-bind="time | date:'yyyy-MM-dd HH:mm:ss'"></p>
  </div>
</div>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-06-27
    • 2021-04-28
    • 1970-01-01
    • 2018-01-02
    • 1970-01-01
    • 1970-01-01
    • 2018-08-19
    • 1970-01-01
    相关资源
    最近更新 更多