nodejs的模块
1.require:导入模块
2.exports:导出模块
3.module.exports:导出模块(推荐使用:如果用exports时,如果文件其他部分有module.exports,则exports会被忽略,module.exports不会)
代码展示:
a.js:
//导出模块
exports.lh = function(){
console.log('hello,nodejs');
}
b.js:
//导入模块
var mo = require('./a.js');
mo.lh();
---------------------------------------
a.js:
function lh(){
console.log('hello,nodejs');
}
//导出模块
module.exports=lh;
b.js:
//导入模块
var mo = require('./a.js');
mo();
nodejs文件操作
1.文件系统模块:fs
2.同步读取文件:fs.readFileSync();
3.异步读取文件:fs.readFile();
代码展示:
a.js:
//导入文件系统模块
var fs = require('fs');
//第一个参数:读取文件的路径
//第二个参数:读取文件的内容(可选参数)
//第三个参数:回调函数(错误参数,读取文件的内容)
fs.readFile('1.txt',function(err,data){
//判断是否出错
if(err){
console.log(err);
}else{
//toString();将对象转化为字符串
console.log(data,toString());
}
})
nodejs的io键盘交互
Readline是node里实现标准输入输出的封装好的模块,通过这个模块我们可以以逐行的方式读取数据流。
代码展示:
//导入readline模块
var readline = require('readline');
//创建readline接口实例
var rl = readline.createInterface({input:process.stdin,output:process.stdout});
rl.setPrompt('请输入一些东西');
rl.prompt();
rl.on('line',(line)=>{var str=line.trim();
console.log(123);
rl.prompt();
}).on('close',()=>{
console.log('exit');
process.exit();
});
nodejs的url判断渲染模板
可以通过判断url.pathname的不同渲染不同页面
代码展示:
//导入http模块
var http = require('http');
//导入文件系统模块
var fs = require('fs');
//导入url模块
var urlapi = require('url');
//创建http.server实例
http.createServer(function(req,res){
//解析请求的url
var url = urlapi.parse(req.url);
console.log(url.pathname);
}).listen(3000);