Node.js 与前端 | 青训营笔记

89 阅读1分钟

这是我参与「第四届青训营」笔记创作活动的的第4天

什么是Node.js

Node.js 是一个事件驱动 I/O 服务端 JavaScript 环境,基于 Google 的 V8 引擎,V8 引擎执行 Javascript 的速度非常快,性能非常好。简单的说,Node.js 就是运行在服务端的 JavaScript。

Node.js的应用场景

1. 前端工程化

  • 打包工具(Bundle):webpack,vite,esbuild,parcel
  • 压缩工具(Uglify):uglifyjs
  • 转移工具(Transpile):bablejs,typescript
  • 其他语言加入竞争:基于go实现的ebuild,parcel,prisma

虽然前端工程化目前有不少语言竞争,但短时间内Node.js还是难以被代替,一哥的位置妥妥的

2. web 服务端应用

在众多后端语言中,node.js有以下特点优势:

  • 学习效率平缓,开发效率高
  • 运行效率接近常见的编程语言
  • 社区生态丰富及工具链成熟(如npm,V8 inspector)
  • 与前端结合的场景会有优势(如SSR)

node.js与前端共用一套代码,这便是node.js独特的优势

3. Electron 跨端桌面应用

vscode, slack, discord, zoom等常见软件都是用Electron开发的。Electron 开发效率高,所以大型公司的效率工具,大部分都是基于 Electron 做的

大部分场景在选型时,都值得考虑

4.node.js做的应用

  • BFF应用,SSR应用,如Modern.js
  • 服务端应用:头条搜索,西瓜视频,懂车帝
  • Electron应用:飞书,飞连
  • 每年新增1000+ Node.js 应用