type
status
date
slug
summary
tags
category
icon
password
这是我系统入门 Node 开发的第一篇学习笔记,从今天开始,我要记录学习 Node 服务端开发过程中的点点滴滴,今天入门一下 Node 的一些基础概念
📝 Node.js 基础概念
学习 Node 开发之前有两个问题必须搞懂
- Node.js 到底是什么?
Node.js 是 JavaScript 的运行环境,是一个基于 Chrome 的 V8 引擎的 JavaScript 运行环境。Node.js 允许在服务器端执行 JavaScript 代码,并提供了一个可以处理文件系统、网络请求和其他后台任务的环境,是一个除了浏览器之外可以让 JavaScript 代码运行的环境。
- 为什么浏览器可以运行 JavaScript 代码?
浏览器可以运行 JavaScript 代码,是因为浏览器内置了 JavaScript 引擎(如 Chrome 的 V8 引擎),这些引擎会 JavaScript 代码编译解析成机器码,交给 cpu 进行运算,最终得到结果。
- Node.js 和 JavaScript 的关系
JavaScript 是一种编程语言,而 Node.js 是一个运行时环境,它允许 JavaScript 代码在浏览器之外的环境中执行。浏览器提供了与网页交互相关的 API,如 DOM 操作、网络请求等;而 Node.js 提供了用于与操作系统交互的 API,例如文件系统操作、网络通信和命令行工具。总的来说,Node.js 扩展了 JavaScript 的应用场景,使其可以用于服务器端编程和其他后台任务。
📝 Node.js 如何运行 JavaScript 代码
很简单,在命令行中执行 node + 文件名就行了,比如
node index.js
📝 Node.js 文件操作
- 引入“文件系统模块”
- 读取文件
- 写入文件(写入的内容会重置原有的内容)
- 追加内容
追加内容的方法就是先读取里面的内容然后再将新内容拼接后写入,从而达到追加效果
📝 Node.js 模块化概念
- require('fs') 到底是什么意思?
在 Node.js 中,fs 是一个内置模块,提供了与文件系统交互的功能。require('fs') 的确是引入了 fs 模块,而不是某个特定的 API。通过引入 fs 模块,你可以访问和使用该模块中提供的各种 API 来进行文件操作,比如读取、写入、监视文件等
- 什么是模块化?
每个文件就是一个模块。模块内的变量和方法默认是私有的,不能被其他模块直接访问。要让其他模块使用这些变量和方法,需要通过
module.exports
导出它们,然后在其他模块中通过 require
导入- 为什么是 module.exports 导出,require 导入
因为 Node.js 默认使用 CommonJS 规范,module.exports、require 是CommonJS 规范定义了模块的导入和导出方式,和 ECMAScript Module 模块化规范完全不同,比如说前端开发经常使用的 import、export 语法其实就是 ECMAScript module 的规范
- Node.js 如何使用 ECMAScript module
Node.js 默认是不支持 ES module 规范的,解决方案有两种,第一种方案是修改文件后缀名,改成 .mjs ,第二种方案在 package.json 设置 "type": "module"
- 作者:NotionNext
- 链接:https://tangly1024.com/7a085eaf-2fff-44c7-9a02-3f8e6ab00d82
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。