重新加载外部 javascript 文件的最佳和快速实践?

Best and fast practice to reload an external javascript file?

大家好,我有一个很大的疑问.... 在我的 javscript 代码中,我需要每 1 分钟重新加载一个 js 文件(其中有一个多维数组)。 要重新加载它建议我使用 ajax 或其他方式 ?

示例A:

       try { 
          jQuery.ajax({             
            url: "http://www.fake.con/scripts/out/array/week-quakes.js",
            dataType: "script",
            cache: false
          });
        }
        catch(e){
            var aggiungi= '<span>there's error about server</span>';
            $(aggiungi).appendTo('#lista-eq');    
        }

例子B

$("head script[src='http://www.fake.con/scripts/out/array/week-quakes.js']").remove();


$('head').append('<script type="text/javascript" src="http://www.fake.con/scripts/out/array/week-quakes.js"><\/script>');   

这些代码在setInterval(function())

里面

但是我的问题也是,当我可以使用 realod js 文件时,它还没有准备好或不存在,那么我该如何解决这个问题?

我希望你能帮助我并提出好的建议:)

我会选择那样的东西。首先删除旧版本。然后用新元素创建一个新元素,并将某种 "cachebuster" 添加到 url,因此它不会重新加载缓存版本。

let loadJsScript = function(src) {
    let oldScript = $("script[src='" + src + "']"),
        script = document.createElement('script');

    oldScript && oldScript.remove();

    script.type = 'text/javascript';
    script.src = src

    $('head').append(script);
}


loadJsScript('/scripts/out/array/week-quakes.js?cachebuster='+ new Date().getTime());

为了 运行 函数每分钟你会用 setInterval 函数包装它。

setInterval(function(){ 
 loadJsScript('/scripts/out/array/week-quakes.js?cachebuster='+ new Date().getTime());
},60000)