Javascript 在单独的JS文件中包含助手函数(客户端)

Javascript 在单独的JS文件中包含助手函数(客户端),javascript,Javascript,首先,我知道这在很大程度上可能是相当低级的,我很抱歉在问这个问题之前没有尝试任何东西 对于在单独的文件中包含helper函数,你们有什么建议?我已经习惯使用node.js的模块接口来完成这项工作,但我并不完全了解如何在客户端实现类似的功能 我想将其抽象到自己的文件中的小示例: var helpers = (function() { var _helpers = {}; _helpers.buildDateFromDelta = function(delta) { date =

首先,我知道这在很大程度上可能是相当低级的,我很抱歉在问这个问题之前没有尝试任何东西

对于在单独的文件中包含helper函数,你们有什么建议?我已经习惯使用node.js的
模块
接口来完成这项工作,但我并不完全了解如何在客户端实现类似的功能

我想将其抽象到自己的文件中的小示例:

var helpers = (function() {
  var _helpers = {};

  _helpers.buildDateFromDelta = function(delta) {
    date = new Date();
    date.setDate(date.getDate() - delta);
    date.setHours(0, 0, 0, 0);

    return date;
  };

  return _helpers;
})();

不确定这是否是您想要的,但是,这是我要做的(假设您在HTML页面上运行此功能)

这段代码放在主js文件中

希望有帮助

不确定这是否是您要查找的内容,但我会这样做(假设您在HTML页面上运行此功能)

这段代码放在主js文件中

希望有帮助

我对助手函数进行编码的方式已经设置好,我可以轻松地将它们包含在单独的文件中

HTML file-using-helpers.js
这是因为在声明helper变量时,它是在全局范围内设置的(我假设)。在该文件之后包含的其他顶级作用域文件也可以使用该变量。

我对助手函数进行编码的方式已经设置好,可以轻松地将它们包含在单独的文件中

HTML file-using-helpers.js
这是因为在声明helper变量时,它是在全局范围内设置的(我假设)。该文件后面包含的其他顶级文件也可以使用该变量。

除非我不明白,否则您已经回答了自己的问题。只要有两个文件,在将要使用它的文件之前包含helper文件,比如说我将上述函数放入它自己的文件中,在另一个文件中(
src
'ed在helpers文件之前),我可以使用helpers变量?我猜他们都在顶级范围内?哈哈,好吧,那就行了。好吧,好笑,我的代码已经可以移植了。你已经回答了你自己的问题,除非我不明白。只要有两个文件,在将要使用它的文件之前包含helper文件,比如说我将上述函数放入它自己的文件中,在另一个文件中(
src
'ed在helpers文件之前),我可以使用helpers变量?我猜他们都在顶级范围内?哈哈,好吧,那就行了。好吧,好笑,我的代码已经可以移植了。啊,我读了你的问题,因为你只想在源代码中包含一个文件。啊,我读了你的问题,因为你只想在源代码中包含一个文件。
var s = document.createElement("script");
s.src = "external.js";
document.getElementsByTagName("head")[0].appendChild(s);
<script src="/javascript/helper.js" type="text/javascript">
<script src="/javascript/file-using-helpers.js" type="text/javascript">
var helpers = (function() {
  var _helpers = {};

  _helpers.buildDateFromDelta = function(delta) {
    date = new Date();
    date.setDate(date.getDate() - delta);
    date.setHours(0, 0, 0, 0);

    return date;
  };

  return _helpers;
})();
var date = helpers.buildDateFromDelta(0);
console.log(date.getFullYear());  // Works

var otherIIFEExample = (function(lib) {
  console.log(lib.buildDateFromdelta(0).getFullYear());
})(helpers);