Javascript 时钟未使用moment.js每秒更新一次

Javascript 时钟未使用moment.js每秒更新一次,javascript,momentjs,Javascript,Momentjs,第一次使用moment.js,我正在努力实现一个时钟来显示CET和PST中的时间。我的代码如下: function cetClock() { var cet = moment.tz("Europe/London"); var today = new Date(cet); var h = today.getHours(); var m = today.getMinutes(); var s = today.getSeconds(); m = chec

第一次使用
moment.js
,我正在努力实现一个时钟来显示CET和PST中的时间。我的代码如下:

function cetClock() {
    var cet = moment.tz("Europe/London");
    var today = new Date(cet);
    var h = today.getHours();
    var m = today.getMinutes();
    var s = today.getSeconds();
    m = checkCetTime(m);
    s = checkCetTime(s);
    $rootScope.cetTime =  h + ":" + m + ":" + s;
    var t = setTimeout(cetClock, 300);
}
function checkCetTime(i) {
    if (i < 10) {i = "0" + i};  // add zero in front of numbers < 10
    return i;
}

cetClock()
功能时钟(){
var cet=矩.tz(“欧洲/伦敦”);
var今日=新日期(cet);
var h=today.getHours();
var m=today.getMinutes();
var s=today.getSeconds();
m=检查时间(m);
s=检查时间(s);
$rootScope.cetTime=h+“:“+m+”:“+s;
var t=设置超时(cetClock,300);
}
功能检查时间(i){
如果(i<10){i=“0”+i};//在<10的数字前面加零
返回i;
}
电子时钟()


CET:{{$root.cetTime}

我遇到的问题是,视图中的时间仅每4-5秒更新一次。如果我在函数中记录
h
m
s
,它会每隔500毫秒显示更新的时间

问题


为什么视图中的时钟无法每秒更新一次?

我建议使用
$timeout
而不是
setTimeout
,它将自动触发摘要周期。

ahhh。非常简单。非常感谢。如果可能的话,我会把你的答案标对
<div class="col-md-6">
    <p>CET: {{$root.cetTime}}</p>
</div>