Node.js模块封装及使用

简介:

 Node.js中也有一些功能的封装,类似C#的类库,封装成模块这样方便使用,安装之后用require()就能引入调用.

一、Node.js模块封装

 1.创建一个名为censorify的文件夹

 2.在censorify下创建3个文件censortext.js、package.json、README.md文件

    1)、在censortext.js下输入一个过滤特定单词并用星号代替的函数。


var censoredWorlds=["sad","bad","mad"];
var custormCensoredWords=[];
function censor(inStr)
{
    for(idx in censoredWorlds)
    {
        inStr=inStr.replace(censoredWorlds[idx],"****");
    }
    for(idx in custormCensoredWords)
    {
        inStr=inStr.replace(custormCensoredWords[idx],"****");
    }
    return inStr;
}
 
function addCensoreWorld(world)
{
    custormCensoredWords.push(world);
}
 
function getCensoreWorlds()
{
    return censoredWorlds.concat(custormCensoredWords);
}
exports.censor=censor;
exports.addCensoreWorld=addCensoreWorld;
exports.getCensoreWorlds=getCensoreWorlds;

 3)、创建的README.md文件主要是描述说明

   3.使用命令行创建封装模块

使用命令行导航到censorify文件夹下,然后使用命令 npm pack 封装生成tgz文件,这样就封装了一个模块。

二、封装模块的使用

封装模块的使用有两种方法 :发布到NPM注册表、本地使用,这里只记录下本地使用的方法.

1.创建名readwords文件夹

2.命令行导航到readwords文件夹下,然后安装已经封装好的模块,如果是已经发布到NPM注册表的直接 npm install 名字,如果是在本地 npm install tgz文件路径。

3.安装完成后会在readwords文件夹下生成包含censority子文件夹的node_modules文件夹

4.新建readwords.js文件测试(注意代码console、封装模块的函数别写错了)


var censor=require("censority");
console.log(censor.getCensoreWorlds());
console.log(censor.censor("Some very sad,bad and mad text"));
censor.addCensoreWorld("gloomy");
console.log(censor.getCensoreWorlds());
console.log(censor.censor("A very goolmy day."));

5.使用

用命令行node readwords.js来调用readwords.js查看结果


相关文章
|
6月前
|
JavaScript 前端开发
在Node.js中,如何合理使用模块来避免全局变量的问题?
在Node.js中,如何合理使用模块来避免全局变量的问题?
262 71
|
6月前
|
JavaScript 前端开发 开发者
Node学习笔记:HTTP模块
总的来说,Node.js的HTTP模块是一个强大的工具,可以帮助你处理HTTP协议的各种需求。无论你是想开设自己的餐厅(创建服务器),还是想去别的餐厅点菜(发出请求),HTTP模块都能满足你的需求。
177 18
|
缓存 JavaScript 安全
nodejs里面的http模块介绍和使用
综上所述,Node.js的http模块是构建Web服务的基础,其灵活性和强大功能,结合Node.js异步非阻塞的特点,为现代Web应用开发提供了坚实的基础。
381 62
|
缓存 JSON JavaScript
Node.js模块系统
10月更文挑战第4天
117 2
|
JavaScript 应用服务中间件 Apache
Node.js Web 模块
10月更文挑战第7天
110 0
|
JavaScript 网络协议
Node.js 工具模块
10月更文挑战第7天
103 0
|
设计模式 JavaScript 前端开发
|
设计模式 JavaScript 前端开发
|
设计模式 JavaScript 前端开发
【javascript设计模式】2.Module(模块)模式
【javascript设计模式】2.Module(模块)模式
210 0