Node.js 引入其他js文件

node.js的基础语法就是JavaScript的语法,所以对于懂得javascript的同学来说要容易一些,至于环境的配置也要相对简单很多,可以访问官方文档进行安装。这里分享一下我在学习中总结的一些东西,这是第一篇先来说说文件之间如何进行引入并互相使用变量及函数。

对于一般的js文件我们在html中进行引用是使用

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

而在node.js项目中使用的全部是js文件,当一个js文件想要使用另一个js文件中的变量或是函数时怎么办?在js文件中使用<script src=””></script>标签对来进行引入是不被允许的,因此在node.js中规定使用require()函数来进行引入

require("test.js");

使用require()进行引入时需要注意几点:

 当需要调用引入文件中的变量、函数或是对象时要声明一个变量来接收引入的对象

var res = require("foo.js");

 当想要其他文件在引入了本文件后能够调用本文件的某些变量或是函数时,需要将被允许的变量或函数在本文件中进行声明

//foo.js
var  a = 1;
function say(){
       console.log(a);
}

exports.a = a;
exports.say = say;
//index.js
var foo = require(foo.js);
console.log(foo.a); 

 当引入的js文件被当做一个对象时,则不应该在使用exports应该使用  moudle.exports = 构造函数  的形式

//view.js
function View(){

 }

 View.prototype.test = function(){
  console.log('test')
 }

 View.test1 = function(){
  console.log('test1')
 }

moudle.exports = view;
//test.js
 var x = require('./foo');
 console.log(x) //{ [Function: View] test1: [Function] }
 console.log(x.test) //undefined
 console.log(x.test1) //[Function]
 x.test1() //test1
  1.  使用require()函数进行文件引入时默认的会首先加moudles_lib文件夹当没有时再逐级进行查找文件。除此之外还可以使用环境变量来进行设置,设置node.js的加载模块的路径。