javascript中的自动刷新功能

Joh*_*Doe -3 javascript php

我想在javascript中自动更新函数time(),我写了这段代码:

var time = null;
setInterval(function() {
      time = Date();
}, 1000);
console.log(time);
Run Code Online (Sandbox Code Playgroud)

但它在console.log中显示为null.我想time()在变量中获得自动更新的功能time

怎么了?

C'e*_*Vie 5

让我们打破这个问题

  1. <?php echo time() ?> 这是在服务器端生成的,无法在客户端(代码实际运行的位置)重新计算.

  2. var time = <?php echo time() ?>;在这里,您将重新声明(并通过此屏蔽)原始time变量.

  3. console.log(time);这是在区间函数范围之外调用的,因此它只运行一次(并且在那个时间内将打印null).

你正在寻找这样的东西:

setInterval(function(){
    console.log(Date())
}, 1000);
Run Code Online (Sandbox Code Playgroud)

如果您希望变量在区间函数范围之外可访问,您可以执行类似的操作

var time;
setInterval(function(){
    time = Date();
    console.log(time);
}, 1000);

// Now the 'time' variable will be accessible and will hold the latest date value 
// For example console.log(time)
Run Code Online (Sandbox Code Playgroud)

当然,您可以替换Date()为特定目的所需的任何日期/时间创建功能.