JavaScript将模块“导入”到另一个模块中

时间:2013-10-21 22:33:12

标签: javascript

我目前正在使用JavaScript来尝试更多地理解语言。我想创建两个不同的模块,一个具有通用辅助函数,另一个具有该问题的特定功能。

如何从一个模块访问另一个模块的功能?

2 个答案:

答案 0 :(得分:1)

这里有两种选择。两者都很受欢迎,所以你可以选择它。

第一种是在应用程序模块的父级范围内定义辅助模块:

var helpMod = (function(){
  return {foo:"bar"}
})();

var appMod = (function(){
  console.log(helpMod.foo);
})()

第二个是直接将模块作为参数导入闭包函数:

var helpMod = (function(){
  return {foo:"bar"}
})();

var appMod = (function(h){
  console.log(h.foo);
})(helpMod);

直接导入更明确,但利用范围界定可能更容易 - 只要您对全局范围内的变量感到满意就可以了!

答案 1 :(得分:0)

您只需将各种功能放入两个单独的文件中,然后在"沙盒中引用它们即可。 HTML页面如下:

<强> helper.js

function helper_function() {
    alert("this is a helper function");
}

<强> specific.js

function specific_function() {
    alert("this is a specific function");
}

<强>的index.html

<html>
<head>
    <script src="helper.js"></script>
    <script src="specific.js"></script>
</head>


<body>

<script type="text/javascript">
    helper_function();
    specific_function();

</script>
</body>
</html>