欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Node 模块

程序员文章站 2022-03-27 08:26:32
...

Node 模块

  • 模块就是一个 js 文件, 内部成员全部私有,只有导出才可以被访问
    1. 核心模块: 内置,无须声明,直接导入并使用
    1. 文件模块: 自定义,先声明,再导入
    1. 第三方模块: npm 安装的
  1. /// 1. 核心模块, 无须声明,直接导入并使用
  2. const http = require("http");
  3. // console.log(http)
  4. const fs = require("fs");
  5. // console.log(fs)
  6. // 2. 文件模块: 先声明,导出, 再导入;导入必须添加文件路径
  7. // exports
  8. // 推荐方案,一次性导出
  9. module.exports = {
  10. domain: "help10086.cn",
  11. name: "PHP中文网",
  12. getSite() {
  13. return this.name + "(**" + this.domain + "**)";
  14. },
  15. };
  16. // 导入
  17. let site = require("./m1.js");
  18. // console.log(site)
  19. // console.log(site.getSite())
  20. site = require("./m2.js");
  21. console.log(site);
  22. console.log(site.getSite());

Node http 模块

  • ndoe-http-server,快速创建 http 服务器
STT api 方法 说明
1 response.writeHead 设置响应头
2 response.end 写入并结束
  1. // http模块
  2. // 导入http模块
  3. const http = require("http");
  4. // 创建一个web服务器
  5. // request 请求对象
  6. // response 相应对象
  7. http
  8. .createServer((request, response) => {
  9. // 设置响应头
  10. // response.writeHead(200, { "Content-Type": "text/plain" })
  11. // 写入并结束
  12. // response.end("Hello Help")
  13. // html
  14. // "text/plain" -> "text/html"
  15. // response.writeHead(200, { "Content-Type": "text/html" })
  16. // response.end("<h1 style='color:red'>Hello Help</h1>")
  17. // json
  18. // "text/html" -> "application/json"
  19. response.writeHead(200, { "Content-Type": "application/json" });
  20. response.end(`
  21. {
  22. "msnv":900101,
  23. "name": "minh",
  24. "email": "minh@gmail.com"
  25. }
  26. `);
  27. })
  28. .listen(8081, () => console.log("http://127.0.0.1:8081/"));

Node fs 模块,文件模块

  • ndoe-file-read-async,异步
  • ndoe-file-read-sync,同步,服务器端
  1. // 文件模块
  2. // console.log(__dirname)
  3. const fs = require("fs");
  4. fs.readFile(__dirname + "/readme.txt", (err, data) => {
  5. if (err) return console.error(err);
  6. console.log(data.toString());
  7. });

Node path 模块

  1. // path模块
  2. const str = "./node/hello.js";
  3. const path = require("path");
  4. // 绝对路径
  5. console.log(path.resolve(str));
  6. // 目录部分
  7. console.log(path.dirname(str));
  8. // 文件名
  9. console.log(path.basename(str));
  10. // 扩展名
  11. console.log(path.extname(str));
  12. // pathStr -> obj
  13. console.log(path.parse(str));
  14. // obj->pathStr
  15. const obj = {
  16. root: "",
  17. dir: "./demo",
  18. base: "test.js",
  19. ext: ".js",
  20. name: "test",
  21. };
  22. console.log(path.format(obj));