0

正如标题所说,我有一些 javascript 文件。有些部分调用了一些网站。我希望能够将网站存储在不同的文件中,这样如果网站发生更改,我们只需要进行一项更改而不是多次更改。

有什么建议么?

我试着做类似的事情

/**
 * Returns URLs
 */
var URLCONTEXT = "/root-url/context/";
var URLROOT = "/root-url/";

function getContextUrl(){
    return URLCONTEXT;
}

function getRootUrl(){
    return URLROOT;
}

但这没有办法与其他 JS 文件进行通信 =/

4

3 回答 3

1

将您的 url 常量包含在 js 文件中,例如

url-constants.js

var URLCONTEXT = "/root-url/context/";
var URLROOT = "/root-url/";

并在其他 js 文件之前首先引用此 js 文件。

并且您将能够在任何其他 js 文件中使用 url-constants 变量。

other.js

function getContextUrl(){
    return URLCONTEXT;
}

function getRootUrl(){
    return URLROOT;
}

将这些包含在您的页面中,例如

<script language="text/javascript" src="url-constants.js"></script>
<script language="text/javascript" src="other.js"></script>
于 2012-10-25T14:50:23.633 回答
0

var 定义在函数之外,而用名称定义的函数位于全局命名空间中。只要首先加载此 JS 文件,您就可以从其他 JS 文件中访问它们。

于 2012-10-25T14:49:45.373 回答
0

你应该能够做到这一点。只需确保在访问它的文件之前包含带有 url 的文件。

另外,我不建议用这些来污染全局范围,即使你用大写字母命名它们。怎么定义

var URLS = {
    urlContext: '/root-url/context',
    urlRoot: '/root-url'
};

并在带有 URLS.urlContext 和 URLS.urlRoot 的其他文件中使用它们?

于 2012-10-25T14:54:40.613 回答