在另一个JS文件中使用javascript文件

Using a javascript file in another js file

本问题已经有最佳答案,请猛点这里访问。

我正在编写一些不与HTML文档一起使用的javascript文件。例如,在JS中编写一个计算器,其中我将有不同的.JS文件,比如一个用于加法、减法、乘法、除法等。

我希望在一个独立的.js文件中进行每个数学操作,然后再创建一个.js文件,该文件将包含其他较小的文件,并可以从中调用函数?

有可能吗?

数学例子只是一个简单的表达我意思的方法,真正的程序比这个要复杂一些,拆分代码的主要目的是因为我更容易用专门化的小代码段来解释。

我没有任何要处理的文档或DOM,只需要简单的.js文件和里面的算法。


使用javascript:

1
2
3
var script = document.createElement('script');
script.src = '/js/script';
document.head.appendChild(script);

使用jQuery:

1
2
3
4
5
6
//you need to change your path
$.getScript('/js/script.js', function()
{
    // script is imported

});


以下是同步版本:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
function myRequire( url ) {
    var ajax = new XMLHttpRequest();
    ajax.open( 'GET', url, false ); // <-- the 'false' makes it synchronous
    ajax.onreadystatechange = function () {
        var script = ajax.response || ajax.responseText;
        if (ajax.readyState === 4) {
            switch( ajax.status) {
                case 200:
                    eval.apply( window, [script] );
                    console.log("script loaded:", url);
                    break;
                default:
                    console.log("ERROR: script not loaded:", url);
            }
        }
    };
    ajax.send(null);
}

注意,要获得这个跨域的工作状态,服务器需要在其响应中设置allow origin header。