我想在javascript中自动更新函数time(),我写了这段代码:
var time = null;
setInterval(function() {
time = Date();
}, 1000);
console.log(time);
Run Code Online (Sandbox Code Playgroud)
但它在console.log中显示为null.我想time()在变量中获得自动更新的功能time
怎么了?
让我们打破这个问题
<?php echo time() ?> 这是在服务器端生成的,无法在客户端(代码实际运行的位置)重新计算.
var time = <?php echo time() ?>;在这里,您将重新声明(并通过此屏蔽)原始time变量.
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()为特定目的所需的任何日期/时间创建功能.