目录
内置模块的基本使用
fs模块的读文件
Npdemon全局模块
vscode快捷键
同步异步
同步异步面试题
和路径相关的两个变量
使用拼接的绝对路径来读取文件
path.join([…paths])
使用path模块拼接而成的绝对路径来读取文件
使用内置模块http来创建一个服务器
request.setHeader(name, value)
首页 web前端 js教程 浅谈Nodejs中内置模块的基本用法

浅谈Nodejs中内置模块的基本用法

Mar 22, 2021 am 09:56 AM
nodejs 内置模块

本篇文章带大家一起了解一下Nodejs内置模块的基本用法。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。

浅谈Nodejs中内置模块的基本用法

相关推荐:《nodejs 教程

内置模块的基本使用

// 01. 导包
const fs = require("fs");
// 02. 调用unlink删除方法
// 第一个参数:要删除的文件的路径
// 第二个参数:回调函数
fs.unlink("01-内置模块fs的使用/tmp/hello.txt", (err) => {
  if (err) throw err;
  console.log("已成功删除 /tmp/hello");
});
登录后复制

fs模块的读文件

fs.readFile(path[, options], callback)
登录后复制

第一个参数:文件的路径

第二个参数:可选参数,读取文件的编码格式

第三个参数:回调函数

fs.readFile("01-内置模块fs的使用/etc/passwd.txt", "utf-8", (err, data) => {
  // err是一个错误对象,如果没有错就返回一个null
  // data是读的文件内容
  //   console.log(err); // null
  console.log(data); // 这是一个寂寞的天,下着有些伤心的雨!
});
登录后复制

Npdemon全局模块

作用:终端下自动执行代码

  • 安装 npm i nodemon -g

  • nodemon 文件名即可

  • 自动监视文件的修改,自动重新运行

vscode快捷键

  • ctrl+d 选择相同的下一个

  • ctrl+左右 按单词跳转光标

  • ctrl+enter 光标另起一行

同步异步

  • 同步
console.log("哈哈");
for (var i = 0; i < 10; i++) {
  console.log(i);
}
console.log("呵呵"); -> 
    
哈哈
0
1
2
3
4
5
6
7
8
9
10
呵呵
登录后复制
  • 异步
console.log("哈哈");
setTimeout(() => {
  console.log("啦啦啦");
}, 1000);
console.log("呵呵"); -> 
    
哈哈
呵呵
啦啦啦
登录后复制
  • 刚才我们学习的fs模块读/写操作就是一个异步操作
console.log("哈哈");
const fs = require("fs");
fs.readFile("01-内置模块fs的使用/etc/望庐山瀑布.txt", "utf-8", (err, data) => {
  if (err === null) {
    console.log(data);
  } else {
    console.log(err);
  }
});
console.log("呵呵"); -> 

哈哈
呵呵

      望庐山瀑布
          唐·李白
    日照香炉生紫烟,
    遥看瀑布挂前川。
    飞流直下三千尺,
    疑是银河落九天。
登录后复制
  • 其实读文件也有同步操作
console.log("哈哈");
const fs = require("fs");
let data = fs.readFileSync("01-内置模块fs的使用/etc/passwd.txt", "utf-8");
console.log(data);
console.log("呵呵"); -> 
    
哈哈
这是一个寂寞的天,下着有些伤心的雨!
呵呵
登录后复制

同步异步面试题

// 看代码,说出运行结果
var t = true;

while (t) {
    window.setTimeout(function () {
      t = false;
    }, 1000);
}
alert("end"); -> 死循环
登录后复制

和路径相关的两个变量

  • __dirname: 获现的是当前这个文件所在的整个文件夹的绝对路径
  • __filename: 拿到的是当前这个文件的绝对路径
console.log(__dirname);
// d:\前端\NodeJs\nodejs code\02-内置模块path的使用
console.log(__filename);
// d:\前端\NodeJs\nodejs code\02-内置模块path的使用\03-和路径相关的两个变量.js
登录后复制

使用拼接的绝对路径来读取文件

const fs = require("fs");
const fullPath = __dirname + "\\etc\\1.txt";
fs.readFile(fullPath, "utf-8", (err, data) => {
  if (err === null) {
    console.log(data);
  } else {
    console.log(err);
  }
});
登录后复制

path.join([…paths])

path.join() 方法会将所有给定的 path 片段连接到一起(使用平台特定的分隔符作为定界符),然后规范化生成的路径。

长度为零的 path 片段会被忽略。 如果连接后的路径字符串为长度为零的字符串,则返回 '.',表示当前工作目录。

// 01. 导入模块
const path = require("path");
// 02. 使用方法
// join方法是把路径片段,连接成一个新的路径.
const fullPath = path.join(__dirname, "etc", "1.txt");
console.log(fullPath);
登录后复制

使用path模块拼接而成的绝对路径来读取文件

// 1. 导入模块
const fs = require("fs");
const path = require("path");
// 2. 调用方法
// 2.1 使用path.joiin来拼接一个绝对路径(要读取文件的绝对路径)
const fullPath = path.join(__dirname, "etc", "1.txt");
// 2.2 读文件
fs.readFile(fullPath, "utf-8", (err, data) => {
  if (err === null) {
    console.log(data);
  } else {
    console.log(err);
  }
});
登录后复制

使用内置模块http来创建一个服务器

NqMrPU.png

// 1. 导入http模块
const http = require("http");

// 2. 创建一个服务器
// 这个方法有一个返回值,返回值就代表这个服务器
const server = http.createServer((require, response) => {
  // 3. 设置返回给用户看的内容
  response.end("hello world!");
});

// 4. 开启服务器
server.listen(8087, () => {
  console.log("服务器开启了:8087");
});
登录后复制

request.setHeader(name, value)

为请求头对象设置单个请求头的值。 如果此请求头已存在于待发送的请求头中,则其值将被替换。 这里可以使用字符串数组来发送具有相同名称的多个请求头。 非字符串值将被原样保存。 因此 request.getHeader() 可能会返回非字符串值。 但是非字符串值将转换为字符串以进行网络传输。

request.setHeader('Content-Type', 'application/json');
登录后复制

或:

request.setHeader('Cookie', ['type=ninja', 'language=javascript']);
登录后复制

如果想要返回去的中文不乱码,那就要设置响应头.

 response.setHeader("Content-Type", "text/html;charset=utf-8");
登录后复制

更多编程相关知识,请访问:编程视频!!

以上是浅谈Nodejs中内置模块的基本用法的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

nodejs和vuejs区别 nodejs和vuejs区别 Apr 21, 2024 am 04:17 AM

Node.js 是一种服务器端 JavaScript 运行时,而 Vue.js 是一个客户端 JavaScript 框架,用于创建交互式用户界面。Node.js 用于服务器端开发,如后端服务 API 开发和数据处理,而 Vue.js 用于客户端开发,如单页面应用程序和响应式用户界面。

nodejs是后端框架吗 nodejs是后端框架吗 Apr 21, 2024 am 05:09 AM

Node.js 可作为后端框架使用,因为它提供高性能、可扩展性、跨平台支持、丰富的生态系统和易于开发等功能。

nodejs怎么连接mysql数据库 nodejs怎么连接mysql数据库 Apr 21, 2024 am 06:13 AM

要连接 MySQL 数据库,需要遵循以下步骤:安装 mysql2 驱动程序。使用 mysql2.createConnection() 创建连接对象,其中包含主机地址、端口、用户名、密码和数据库名称。使用 connection.query() 执行查询。最后使用 connection.end() 结束连接。

nodejs安装目录里的npm与npm.cmd文件有什么区别 nodejs安装目录里的npm与npm.cmd文件有什么区别 Apr 21, 2024 am 05:18 AM

Node.js 安装目录中有两个与 npm 相关的文件:npm 和 npm.cmd,区别如下:扩展名不同:npm 是可执行文件,npm.cmd 是命令窗口快捷方式。Windows 用户:npm.cmd 可以在命令提示符下使用,npm 只能从命令行运行。兼容性:npm.cmd 特定于 Windows 系统,npm 跨平台可用。使用建议:Windows 用户使用 npm.cmd,其他操作系统使用 npm。

nodejs中的全局变量有哪些 nodejs中的全局变量有哪些 Apr 21, 2024 am 04:54 AM

Node.js 中存在以下全局变量:全局对象:global核心模块:process、console、require运行时环境变量:__dirname、__filename、__line、__column常量:undefined、null、NaN、Infinity、-Infinity

nodejs和java的差别大吗 nodejs和java的差别大吗 Apr 21, 2024 am 06:12 AM

Node.js 和 Java 的主要差异在于设计和特性:事件驱动与线程驱动:Node.js 基于事件驱动,Java 基于线程驱动。单线程与多线程:Node.js 使用单线程事件循环,Java 使用多线程架构。运行时环境:Node.js 在 V8 JavaScript 引擎上运行,而 Java 在 JVM 上运行。语法:Node.js 使用 JavaScript 语法,而 Java 使用 Java 语法。用途:Node.js 适用于 I/O 密集型任务,而 Java 适用于大型企业应用程序。

nodejs是后端开发语言吗 nodejs是后端开发语言吗 Apr 21, 2024 am 05:09 AM

是的,Node.js 是一种后端开发语言。它用于后端开发,包括处理服务器端业务逻辑、管理数据库连接和提供 API。

nodejs项目怎么部署到服务器 nodejs项目怎么部署到服务器 Apr 21, 2024 am 04:40 AM

Node.js 项目的服务器部署步骤:准备部署环境:获取服务器访问权限、安装 Node.js、设置 Git 存储库。构建应用程序:使用 npm run build 生成可部署代码和依赖项。上传代码到服务器:通过 Git 或文件传输协议。安装依赖项:SSH 登录服务器并使用 npm install 安装应用程序依赖项。启动应用程序:使用 node index.js 等命令启动应用程序,或使用 pm2 等进程管理器。配置反向代理(可选):使用 Nginx 或 Apache 等反向代理路由流量到应用程

See all articles