Node.js-基础

2023年05月04日 10:08 · 阅读(313) ·

开发环境

名称 版本
操作系统 Windows 10 X64
Node.js v18.16.0

来源

尚硅谷2023版Node.js零基础视频教程,nodejs新手到高手

文档地址

名称 地址
Node.js https://nodejs.org/zh-cn
Node.js 中文网 http://www.nodejs.com.cn/
Node.js 全版本淘宝镜像地址 https://registry.npmmirror.com/binary.html?path=node/v18.16.0/
Node.js API https://nodejs.cn/api
Node.js 笔记 notes/ 前端 / nodejs / 尚硅谷
课件,资料 https://pan.baidu.com/s/1sDOMvUdY9UF3mlJ7ujOADg?pwd=s3wj

Node.js 简介

来源:Node.js 是什么?
来源:Node.js 的作用

Node.js 是一个开源的,跨平台的 JavaScript 运行环境。

通俗来讲:Node.js一款应用程序,是一款软件,它可以运行 JavaScript

Node.js 在前端框架中的地位

Node.js 的作用

● 开发服务器应用
● 开发工具类应用,如 WebpackViteBabel
● 开发桌面端应用,如基于 electronVSCodePostman

Node.js 安装

Node.js 下载地址

下载完毕后,运行 node-v18.16.0-x64.msi,一直下一步到安装完成即可

打开命令行窗口,输入 node -v 有结果说明 Node.js 安装成功

  1. C:\WINDOWS\system32>node -v
  2. v18.16.0

命令行工具

来源:认识命令行工具
来源:命令的结构
来源:CMD 常用命令

参考:【DOS 基础】

Node.js 运行 JavaScript 文件

来源:Node.js 初体验

● 创建文件 01.helloword.js

  1. console.log("hello word!");

Node.js 运行 node 01.helloword.js

● 运行结果

  1. PS D:\luoma\学\Code\2023\前\Node.js> node .\01.helloword.js
  2. hello word!

Node.js 注意点

来源:Node.js 注意点

● Node.js 不能使用 BOMDOM 的 API,可以使用 console 和定时器 API
● Node.js 顶级对象为 global,也可以用 globalThis 访问顶级对象。

测试代码:02.zhuyi.js

  1. //BOM
  2. console.log(window);
  3. //DOM
  4. console.log(document);

运行结果

  1. D:\luoma\学\Code\2023\前\Node.js\02.zhuyi.js
  2. console.log(window);
  3. ^
  4. ReferenceError: window is not defined

require

来源:fs 模块-写入文件

require 是 Node.js 环境中的全局变量,用来导入模块
● 这里,导入内置的文件操作模块 fs

● 案例:02_test.js

  1. // require 是 Node.js 环境中的'全局'变量,用来导入模块
  2. // 这里,导入内置的文件操作模块 fs
  3. const fs = require('fs');
  4. //将 『三人行,必有我师焉。』 写入到当前文件夹下的『座右铭.txt』文件中
  5. fs.writeFile('./座右铭.txt', '三人行,必有我师焉。', err => {
  6. //如果写入失败,则回调函数调用时,会传入错误对象,如写入成功,会传入 null
  7. if(err){
  8. console.log(err);
  9. return;
  10. }
  11. console.log('写入成功');
  12. });

● 运行:node 02_test.js

  1. PS D:\luoma\学\Code\2023\前\Node.js> node .\02.zhuyi.js
  2. 写入成功

__dirname

来源:fs 模块-路径补充说明

__dirnamerequire 类似,都是 Node.js 环境中的全局变量
__dirname 保存着 当前文件所在目录的绝对路径 ,可以使用 __dirname 与文件名拼接成绝对路径
● 使用 fs 模块的时候,尽量使用 __dirname 将路径转化为绝对路径,这样可以避免相对路径产生的 Bug

● 案例:02_test.js

  1. // require 是 Node.js 环境中的'全局'变量,用来导入模块
  2. // 这里,导入内置的文件操作模块 fs
  3. const fs = require('fs');
  4. let data = fs.readFileSync(__dirname + '/座右铭.txt');
  5. console.log(data.toString());

● 运行:node 02_test.js

  1. PS D:\luoma\学\Code\2023\前\Node.js> node .\02.test.js
  2. 三人行,必有我师