nodejs 使用 js 模块的方法实例详解
Intro#
最近需要用nodejs做一个爬虫,Google有一个Puppeteer的项目,可以用它来做爬虫,有关Puppeteer的介绍网上也有很多,在这里就不做详细介绍了。node小白,开始的时候有点懵逼,模块导出也不会。
官方文档上说支持*.mjs但是还要改文件扩展名,感觉有点怪怪的,就没用,主要是基于js的模块使用。
模块导出的两种方式#
因为对C#比较熟悉,从我对C#的理解中,将nodejs中模块导出分成两种形式:
1.一个要实例化才能调用的模块
2.一个不需要实例化就可以调用的静态类,提供一些静态方法
•导出一个要实例化的类
module.exports=exports=function(){};
module.exports=exports=function(){
this.syncCompanyList=asyncfunction(developerName){
awaitsyncCompanyInfo(developerName);
};
asyncfunctionsyncCompanyInfo(developerName){
//...
}
}
•导出一个静态类
exports.funcName=function(){};
vargetDistrictCode=function(districtName){
if(districtName){
for(leti=0;i0){
returndistrictName;
}
for(leti=0;i
引用导出的模块方法#
在node里使用require来引用模块
•引用npm包
constlog4js=require("log4js");
•引用自己编写的模块
constdistrictUtil=require("./utils/districtUtil");
使用导出的模块#
要使用某一模块,需要先引用某一模块,引用模块可以参考上一步
•实例类
constcompany=require("./company");
//...
//实例化一个company对象
varcomp=newcompany();
//调用company里的syncCompanyList
comp.syncCompanyList();
•静态类
constdistrictUtil=require("./utils/districtUtil");
//...
//调用districtUtil里的getDistrictCode
letdistrictNme=districtUtil.getDistrictCode('districtName');
总结
以上所述是小编给大家介绍的nodejs使用js模块的方法实例详解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对毛票票网站的支持!