JavaScript setInterval 和 `this` 解决方案

标签 javascript this setinterval

我需要从我的 setInterval 处理程序访问 this

prefs: null,
startup : function()
    {
        // init prefs
        ...
        this.retrieve_rate();
        this.intervalID = setInterval(this.retrieve_rate, this.INTERVAL);
    },

retrieve_rate : function()
    {
        var ajax = null;
        ajax = new XMLHttpRequest();
        ajax.open('GET', 'http://xyz.example', true);
        ajax.onload = function()
        {
            // access prefs here
        }
    }

如何在 ajax.onload 中访问 this.prefs

最佳答案

this.intervalID = setInterval(this.retrieve_rate.bind(this), this.INTERVAL);

关于JavaScript setInterval 和 `this` 解决方案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2749244/

相关文章:

javascript - 响应式视口(viewport)切换

C++ 中的 java "this"

javascript - 将函数从父组件传递给子组件的 Input() 属性时丢失上下文

javascript - 未捕获的范围错误 : Maximum call stack size exceeded

javascript - ReactJS:未捕获( promise 中) this.setState 不是一个函数

javascript - 使用 SetInterval 进行无限循环

javascript - 如何使用 jQuery 创建 Cookie?

javascript - 如何在javascript中创建输入文本框

javascript - CKEDITOR - 在行文本编辑器中禁用

java - 自动引用此类以在另一个 C++ 中使用