javascript - 为什么 setInterval() 在我的 ES6 代码中不起作用?

标签 javascript

<分区>

我有一个名为 main 的类,它有一个名为 setDate() 的方法。在构造函数方法中,我放置了以下行:setInterval(main.setDate(), 10000) 并且它仅在实例化对象的初始时间运行。如果我将该行作为 setDate() 方法中的尾部调用,它会无限运行并中断浏览器 session 。

最佳答案

尝试传递函数引用,

setInterval(main.setDate, 10000);

你在调用它。因此该函数将被调用,其返回值将作为第一个参数传递给 setInterval

您还可以通过将函数调用作为字符串传递来实现所需的效果,

setInterval("main.setDate()", 10000);

但不推荐传递字符串,因为它会在窗口范围内被求值

关于javascript - 为什么 setInterval() 在我的 ES6 代码中不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35872083/

相关文章:

javascript - 通过 jquery 用数据填充表单

javascript - 使用 Redux 时,将事件从演示组件传递到容器组件是否是反模式?

javascript - 如何让文字在几秒钟后消失

javascript - 在页脚中显示总计,以便一旦为真时加载页面更改时值保持不变

javascript - 图像未显示在我的 mvc 应用程序中

javascript - jQuery 替换多次出现的子字符串/文本

Javascript toString() 方法

javascript - 要求(对我的 Assets 显示路线)#node

Javascript - 在 DOM 元素上制作原型(prototype)

javascript - 查询 : Creating Dynamic Select list