NODE.JS 2

一.模块作用域 和 全局作用域

全局作用域使用 global 来访问,类似于浏览器中的window

每个 Javascript 文件,都是一个单独模块,每个模块都有自己独立的作用域,因此:模块中的成员,默认无法被其它模块访问。

1.使用 global 全局作用域在模块之间共享成员

如果在某个模块内部,想为 全局的 global 作用域挂载一些属性,需要显示的调用global.***来挂载;

注意:在开发中,一般情况下,不推荐使用global全局作用域来共享成员,会存在全局变量污染问题;

2 模块作用域

module(模块标识)

module 属性是 Common JS 规范中定义的,它是一个对象,表示当前这个具体的 js 模块;

require(引用模块)

每一个实现了 CommonJS 规范的模块,必须定义一个 require() 函数,使用这个 require 函数,就能够 很方便的导入其它 模块中的成员,供自己使用;

exports(暴露模块成员)

每一个模块中,如果想要把自己的一些私有成员,暴露给别人使用,那么,必须实现一个 exports 对象,通过exports对象,可以方便的把模块内私有的成员,暴露给外界使用;

module.exports 和 exports 的关系

module.exports 和 exports 默认引用了同一个空对象;

module.exports 和 exports 作用一致,都可以向外暴露成员;

一个模块作用域中,向外暴露私有成员时,永远以 module.exports 为准;

二.包的定义和使用

三npm方法操作



你可能感兴趣的:(NODE.JS 2)