邂逅Node.js

首先先要来学习一下nodejs的基础(和后端开发有联系的)

再然后的学习路线是学习npm,yarn,cnpm,npx,pnpm等包管理工具

然后进行模块化的使用,再去学习webpack和git(版本控制工具)

Node.js是什么

官方对于nodejs的定义:Node.js是一个基于V8 JavaScript引擎的JavaScript运行时环境

他们的关系是:Node程序中含有V8引擎(可以执行JavaScript代码)

V8引擎可以嵌入到C++应用程序中,不论是Chrome还是Node.js都是嵌入了V8引擎来执行JavaScriptdiamante

在Chrome浏览器中,还需要解析,渲染HTML、CSS等相关渲染引擎 ,还需要提供支持浏览器操作的API、浏览器自己的事件循环等。。。

在Node.js中还需要进行文件系统读写、网络IO、加密、压缩解压文件等操作

Node程序用JS/C++/C语言进行编写

我们编写的JavaScript代码会经过V8引擎,在通过Node.js的Bindings将任务放到Libuv的事件循环中,libuv是使用C语言编写的库,提供了事件循环、文件系统读写、网络IO、线程池 等内容

Node.js的应用场景

1.目前前端开发的 库都是以node包的形式进行管理

(npm本身是在node里的,当安装node的时候自动就会安装npm)

现在npm,yarn,pnpm工具成为前端开发使用最多的工具

越来越多的公司使用Node.js作为Web服务器开发、中间件、代理服务器

大量的项目都需要借助Node.js完成前后端渲染的同构应用

资深前端工程师需要为项目编写脚本工具(因为前端工程师编写脚本通常用JS)

前面说的都是Node的理论知识,现在开始实践,进行Node的安装

Node的安装

这是node的官网:

Node.js --- 在任何地方运行 JavaScripthttps://nodejs.org/zh-cn点进去之后可以自选版本安装,本人的电脑之前已经安装过node了:

最好是选择较为稳定的版本进行安装,因为不容易出现问题,就算出现问题了也好解决一点(站在了前人的肩膀上)

安装完node之后可以直接借助node帮助我们运行js的代码,比如这样:

javascript 复制代码
console.log("aaaa")
console.log("bbbb")
console.log("cccc")
console.log("dddd")
console.log("eeee")

这是因为node里面包含V8引擎可以解析JS代码并运行

node有版本的工具,你可以在你的电脑上装多个node的版本

工具有n和nvm,n这个工具就比较好用(是TJ开发的)但是不论是n还是nvm都有一个比较大的缺点:不支持Windows。啊?

但是有人在github上发布了nvm的支持Windows的版本(不是nvm本身)

在实际的开发中用一个版本就行勒,但是架不住有人想来回换版本

这是那个Windows版本的nvm工具:

coreybutler/nvm-windows: A node.js version management utility for Windows. Ironically written in Go.https://github.com/coreybutler/nvm-windows安装完之后就可以通过nvm list查看它帮你管理着什么样的包了

如果想要通过nvm安装东西,那就nvm install x.x.x(版本号),如果想要安装最新版,那可以用latest代替版本号

nvm use可以切换版本

如果你用的是n

安装:

javascript 复制代码
npm install -g n

安装最新的lts版本:

bash 复制代码
n lts

安装最新的版本:

bash 复制代码
n latest

一个n就是查看所有的 版本(可以上下键切换,选定想要的之后回车就切换了)

Node的输入和输出

想要进行输入就要

javascript 复制代码
const arg1 = process.argv[2]
const arg2 = process.argv[3]

console.log(arg1,arg2)

再这样运行

输出的话就使用console.log就完事了,想要清空控制台就是console.clear,想打印函数的调用栈就console.trace,输出是这样的:

Node的REPL

什么是REPL?

REPL是Read-Eval-Print Loop的简称,翻译是"读取-求值-输出"循环

是一个简单的交互式的编程环境(说白了就是你打开网页然后F12一下的那个console栏)

在终端中敲一个node回车就可以来到这个环境了

想要清空内容就用cls

按两次Ctrl+C就可以退出了

这个没有git bash方便(git bash可以执行很多在Linux终端下可用的命令)

相关推荐
codingWhat24 分钟前
整理「祖传」代码,就是在开发脚手架?
前端·javascript·node.js
ServBay44 分钟前
Node.js、Bun 与 Deno,2026 年后端运行时选择指南
node.js·deno·bun
码路飞8 小时前
Node.js 中间层我维护了两年,这周终于摊牌了——成本账单算完我人傻了
node.js
None3211 天前
【NestJs】使用Winston+ELK分布式链路追踪日志采集
javascript·node.js
Dilettante2581 天前
这一招让 Node 后端服务启动速度提升 75%!
typescript·node.js
Mr_li2 天前
NestJS 集成 TypeORM 的最优解
node.js·nestjs
UIUV2 天前
node:child_process spawn 模块学习笔记
javascript·后端·node.js
前端付豪3 天前
Nest 项目小实践之注册登陆
前端·node.js·nestjs
天蓝色的鱼鱼3 天前
Node.js 中间层退潮:从“前端救星”到“成本噩梦”
前端·架构·node.js
codingWhat3 天前
uniapp 多地区、多平台、多环境打包方案
前端·架构·node.js