是否可以first.js
在另一个名为的文件内调用的文件中使用变量second.js
?
first.js
包含一个名为 的变量colorcodes
。
是否可以first.js
在另一个名为的文件内调用的文件中使用变量second.js
?
first.js
包含一个名为 的变量colorcodes
。
正如 Fermin 所说,全局范围内的变量应该可以被声明后加载的所有脚本访问。您还可以使用window
or (在全局范围内)的属性this
来获得相同的效果。
// 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>
您可以使用export从第一个文件导出变量。
//first.js
const colorCode = {
black: "#000",
white: "#fff"
};
export { colorCode };
然后,使用import在第二个文件中导入变量。
//second.js
import { colorCode } from './first.js'
使用 Node.js,您可以通过module导出变量。
//first.js
const colorCode = {
black: "#000",
white: "#fff"
};
module.exports = { colorCode };
然后,使用 require 在第二个文件中导入module/变量。
//second.js
const { colorCode } = require('./first.js')
您可以使用Webpack/Babel 使用 ES6 中的import
和export
方法,但在 Node.js 中您需要启用一个标志,并使用 .mjs 扩展名。
这应该有效 - 在 firstfile 中定义一个全局变量并从 secondfile 访问它:
<script src="/firstfile.js"></script>
<script src="/secondfile.js"></script>
第一个文件.js:
var colors = {
text:'#000000',
background:'#aaaaaa',
something_else:'blue'
};
第二个文件.js:
do_something_with(colors.background);
请注意,加载脚本文件的顺序对于某些浏览器(当然是 IE6,也可能是其他浏览器)很重要