如何在javascript中将时间戳放在变量名中(例如var a12439853 = 1)

ben*_*ben 1 javascript jquery css3

我使用这段代码制作了一个CSS3 ajax加载器.id是ajaxloader的位置.此代码工作正常并且加载器正常运行,但是如果函数被调用两次,则Timeout将相互抵消,因为超时被分配给变量.不知何故,我想确保永远不会发生这种情况.这是我正在使用的JavaScript

function ajaxloader(id) {
    var i = $("#" + id + " .ajaxpieces").length;
    var s = $("#" + id + " .ajaxpieces").filter(function() {
        return ($(this).css('background-color') == "rgb(0, 128, 0)");
    }).next();

    if (s.length < 1) {
        s = $("#" + id + " .ajaxpieces").first();
    }
    s.css('backgroundColor','green').siblings().css('backgroundColor','grey');
    ajax_ii = setTimeout(function(){ajaxloader(id);},550);
}

function killloader() {
    clearTimeout(ajax_ii);
}
Run Code Online (Sandbox Code Playgroud)

Vic*_*ves 5

由于每个变量都是窗口的对象,因此您可以这样做:

            window['a_time'+new Date().getTime()] = setTimeout(function(){
                ajaxloader(id);
            },550);
Run Code Online (Sandbox Code Playgroud)