当前位置:   article > 正文

nodejs

nodejs

1、下载

Node.js — Run JavaScript Everywhere

2、环境搭建

node -v 查看版本

npx 运行外连接

3、小试

运行:node test.js 

4、全局变量

console.log(__dirname);//打印当前所在目录
console.log(__filename);//打印全路径

5、外部引用

node js中引入外部,不能使用SE6中的import,会报

Cannot use import statement outside a module

需要被引用的文件

fnTool.js

  1. let sum_fn = function(a,b){
  2. return a+b;
  3. }
  4. module.exports = sum_fn

test.js

  1. console.log("=======node==开始======");
  2. let sum_fn = require("./fnTool.js");
  3. console.log(sum_fn(3,5));

6、文件的读写

同步读写

  1. var readMe = fs.readFileSync("./fnTool.js","utf-8");
  2. console.log(readMe)

异步读写

  1. //====================异步=============
  2. var reader = fs.readFile("./fnTool.js","utf-8",function(err,data){
  3. fs.writeFile("./newFile1.js",data,function(){
  4. console.log("读写完成");
  5. });
  6. });

7、文件流 和 管道

文件流:

读:

  1. let readerStream = fs.createReadStream(__dirname+"/fnTool.js","utf-8");
  2. let data = "";
  3. readerStream.on("data",function(chunk){
  4. data+=chunk;
  5. });
  6. readerStream.on("end",function(){
  7. console.log(data);
  8. });

写:

  1. var writerStream = fs.createWriteStream(__dirname+"/newFile.js","utf-8");
  2. writerStream.write("NODE JS");
  3. writerStream.end();
  4. writerStream.on("finish",function(){
  5. console.log("写入完成");
  6. });

读写:

  1. let readerStream = fs.createReadStream(__dirname+"/fnTool.js","utf-8");
  2. var writerStream = fs.createWriteStream(__dirname+"/newFile.js","utf-8");
  3. let data = "";
  4. readerStream.on("data",function(chunk){
  5. writerStream.write(chunk);
  6. });
  7. readerStream.on("end",function(){
  8. console.log("读出完成");
  9. });

管道写:

  1. let readerStream = fs.createReadStream(__dirname+"/fnTool.js","utf-8");
  2. var writerStream = fs.createWriteStream(__dirname+"/newFile.js","utf-8");
  3. readerStream.pipe(writerStream);

8、Web服务请求

  1. console.log("=======node==开始======");
  2. let http = require("http");
  3. var server = http.createServer(function(req,res){
  4. console.log("la la la");
  5. });
  6. server.listen(3000,"127.0.0.1");

访问它

后端就会显示:

向前端返回字符:

  1. console.log("=======node==开始======");
  2. let http = require("http");
  3. var server = http.createServer(function(req,res){
  4. //设置返回内容
  5. res.writeHead(200,{
  6. "Content-Type":"text/plain"
  7. });
  8. res.end("Hello world");
  9. });
  10. server.listen(3000,"127.0.0.1");

http://localhost:3000/

向前端返回HTML:

  1. console.log("=======node==开始======");
  2. let http = require("http");
  3. let fs = require("fs");
  4. var server = http.createServer(function(req,res){
  5. //设置返回内容
  6. res.writeHead(200,{
  7. "Content-Type":"text/html"
  8. });
  9. var reader = fs.createReadStream(__dirname+"/list.html");
  10. reader.pipe(res);//直接通过管道写入 返回
  11. });
  12. server.listen(3000,"127.0.0.1");

向前端返回json:
  1. let http = require("http");
  2. let fs = require("fs");
  3. var server = http.createServer(function(req,res){
  4. //设置返回内容
  5. res.writeHead(200,{
  6. "Content-Type":"text/json"
  7. });
  8. let json = {a:"1",b:"2",c:"中国"};
  9. res.end(JSON.stringify(json));
  10. });
  11. server.listen(3000,"127.0.0.1");

9、事件驱动

  1. const Events = require("events");
  2. const myEvent= new Events();
  3. myEvent.on("done",()=>{
  4. console.log("事件执行完成");
  5. });
  6. myEvent.on("done",()=>{
  7. console.log("事件执行完成22");
  8. });
  9. myEvent.emit("done");

10、buffer

  1. console.log("=======node==开始======");
  2. let buf = Buffer.alloc(6);
  3. buf.fill('3')
  4. console.log(buf.toString())
  5. let b1 = Buffer.from('中国');
  6. let b2 = Buffer.from('人民');
  7. let b = Buffer.concat([b1,b2],9);
  8. console.log(b.toString());

nodemon插件使用

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/菜鸟追梦旅行/article/detail/733834
推荐阅读
相关标签
  

闽ICP备14008679号