我可以从另一个文件访问variables吗?

是否有可能在称为first.js另一个文件内的first.js文件中使用variables?

first.js包含一个名为first.js的variables。

正如Fermin所说,全局范围内的一个variables应该在声明后加载的所有脚本都可以访问。 您也可以使用window的属性或(在全局范围内)获得相同的效果。

 // first.js var colorCodes = { back : "#fff", front : "#888", side : "#369" }; 

…在另一个文件中…

 // second.js alert (colorCodes.back); // alerts `#fff` 

…在你的HTML文件…

 <script type="text/javascript" src="first.js"></script> <script type="text/javascript" src="second.js"></script> 

这应该工作 – 在firstfile中定义一个全局variables,并从secondfile中访问它:

 <script src="/firstfile.js"></script> <script src="/secondfile.js"></script> 

firstfile.js:

 var colors = { text:'#000000', background:'#aaaaaa', something_else:'blue' }; 

secondfile.js:

 do_something_with(colors.background); 

请注意,加载脚本文件的顺序对于某些浏览器(IE6肯定也许是其他浏览器)

如果你把你的颜色代码保存在一个全局variables中,你应该可以从javascript文件中访问它。

我确实喜欢上面的回答,但是,虽然没有和我一起工作

因为我inside JQuery $( document ).ready() declaring这些variables

所以确保你在<script>标签里面声明你的variables不在别的地方

我遇到了amplify.js 。 这非常简单。 要存储一个值,我们称之为“myValue”,你需要:

 amplify.store("myKey", "myValue") 

而要访问它,你呢

 amplify.store("myKey") 

我可能会做一点不同的事情。 我不确定为什么我使用这个语法,很久以前从某本书中复制它。 但是我的每个js文件都定义了一个variables。 第一个没有理由的文件被称为R:

  var R = { somevar: 0, othervar: -1, init: function() { ... } // end init function somefunction: function(somearg) { ... } // end somefunction ... }; // end variable R definition $( window ).load(function() { R.init(); }) 

然后如果我有一大段我想分离的代码,我把它放在一个单独的文件和一个不同的variables名称,但是我仍然可以引用Rvariables和函数。 我没有任何理由就打电话给新的TD:

  var TD = { xvar: 0, yvar: -1, init: function() { ... } // end init function sepfunction: function() { ... R.somefunction(xvar); ... } // end somefunction ... }; // end variable TD definition $( window ).load(function() { TD.init(); }) 

你可以看到,在TD'sepfunction'中我称之为R.somefunction。 我意识到这不会给运行效率,因为这两个脚本需要加载,但它确实帮助我保持我的代码组织。