在没有HTML文件的情况下在另一个JS文件中调用javascript函数

时间:2017-03-28 14:51:44

标签: javascript node.js

我在第一个js文件中写了一些泛型函数。

first.js

function genFunc1(param1, param2) {
    //do  stuff
}

function genFunc2(param1, param2) {
    //do  other stuffs
}

我想在另一个文件中重复使用这些功能。

在我的第二个js文件中,我想简单地称它们为:

second.js

genFunc1("foo", 1);
genFunc2("bar", 3);
...

我没有正在运行的HTML文件,我不想使用这样的解决方案,因为事实上,我的senond.js是在另一步中编译的。

我该怎么办?

2 个答案:

答案 0 :(得分:0)

将第一个文件中的函数描述为模块。对于node.js是:

module.exports = {
   yourFunctions:asMethods
}

然后在第二个文件中需要一个模块

var myModule = require('/pathToYour.js')

答案 1 :(得分:0)

本文深入介绍了如何在Node.js中导出函数 - Understanding Module Exports in Node.js

我刚刚遇到this article,它讨论了Node.js模块与ES6。下面你可以看看一个片段,它展示了如何在node.js和ES6中导出函数......我想你一旦理解它就会发现它很直接。

/** Node.js way */
// src/foobar.js
function foo() {
  return 'bar';
}
function bar() {
  return 'foo';
}
module.exports.foo = foo;
module.exports.bar = bar;
// In another file "src/app.js""
const {foo, bar} = require('foobar');
console.log(foo(), bar());

/** ES6 Way */
// src/foobar.js 
export function foo() {
  return 'bar';
}
export function bar() {
  return 'foo';
}
// In another file "src/app.js"
import { foo, bar } from './foobar'
console.log(foo());
console.log(bar()); 

希望这有帮助!