Node.js技术栈—侧重于服务端的学习指南 https://www.nodejs.red
Node.js技术栈
为Node.js学习贡献一份自己微小的力量,本文档是作者从事
Node.js Developer以来的学习历程,旨在为大家提供一个较详细的学习教程,侧重点更倾向于Node.js服务端所涉及的技术栈,如果本文能为您得到帮助,请给予支持!
如何支持:
- 搜索公众号
Node.js技术栈进行关注 - 点击右上角Star :star: 给予关注
- 分享给您身边更多的小伙伴
JavaScript |
ECMAScript6 |
Node.js |
DataBase |
Microservice |
HTTP |
DevOps |
工具 |
资料 |
|---|
JavaScript
- 基础 [more]
[基础]常见问题[基础]undefined与undeclared的区别?[基础]typeof、instanceof 类型检测[作用域]eval()、with 欺骗词法作用域[Error]错误类型ReferenceError、TypeError的区别?[面试]编写一个函数实现多维数组去重?,参考:数组去重的三种实现方式[面试]实现对多维数组降维?,参考:数组降维–扁平化多维数组
- This [more]
- 函数 [more]
[Function]函数声明与函数表达式[Function]内置函数[Function]arguments对象[Function]call和apply的使用与区别?[Function]引用传递[面试]递归调用实现一个阶乘函数?,参考:arguments对象[面试]如何理解JavaScript中的引用传递与值传递?JS中是否拥有引用传递?,参考:引用传递[面试]经典面试题:什么是匿名函数和闭包?,参考:深入理解匿名函数与闭包
- 对象 [more]
[Object]创建对象的四种方法:对象字面量、new关键字构造形式、create方法、原型prototype创建[面试]什么是引用传递?{} == {} 是否等于true,参考:对象引用类型示例分析[面试]如何编写一个对象的深度拷贝函数?,参考:对象copy实现[面试]new操作符具体做了哪些操作,重要知识点!,参考:使用new关键字构造形式创建
- 原型 [more]
[ProtoType]原型概念[ProtoType]原型模式的执行流程[ProtoType]构造函数实例属性方法[ProtoType]构建原型属性方法[ProtoType]原型字面量创建对象、字面量创建对象、构造函数创建对象[ProtoType]原型的实际应用、jquery中原型应用、zepto中原型的应用[面试]如何实现原型的扩展?,参考:原型的扩展
- 正则 [more]
ECMAScript6
- 变量声明 [more]
[Variable]新增let&const变量声明
- 解构赋值 [more]
- 扩展系列 [more]
- 集合系列 [more]
[Set]集合Set、WeakSet[Map]集合Map、WeakMap[Map-Array]Map与Array横向对比增、查、改、删[Set-Array]Set与Array增、查、改、删对比[Map-Set-Array]Map、Set、Object三者增、查、改、删对比
- Promise [more]
[Promise]Promise的基本使用和原理[Promise]Callback方式书写[Promise]Promise方式书写[Promise]Promise.finally()[Promise]Promise并行执行 Promise.all()[Promise]Promise率先执行 Promise.race()[Promise]错误捕获[面试]Promise 中 .then 的第二参数与 .catch 有什么区别?,参考:错误捕获[面试]怎么让一个函数无论promise对象成功和失败都能被调用?,参考:finally
- Decorators [more]
- Symbol [more]
- Generator [more]
Nodejs
- 模块 [more]
- 事件轮询(Event Loop) [more]
[EventLoop]线程模型、EventLoop介绍[I/O]操作系统I/O模型及轮询技术演变[I/O]白话风格(小明与妹子的邂逅)讲解I/O演进[Node.js-EventLoop]Node.js中的Event Loop[Browser-EventLoop]浏览器中的Event Loop[Interview]I/O多路复用轮询技术select和epoll的区别?,参考:#
- 中间件 [more]
[Mddleware]常用Web框架&中间件汇总
- 缓存
[Cache]memory-fs 将文件写入内存[Cache]Memory Cache[Cache]Node Cache
- 定时任务
[Schedule]node-schedule[Schedule]Agenda 将Node中的定时任务存储在数据库中(官方推荐MongoDB)[Schedule]Node.js结合RabbitMQ延迟队列实现定时任务
- 模板引擎
[Template]Ejs[Template]Handlebarsjs[Template]Jade
- 日志记录收集
[Logger]Sentry–错误日志收集框架[Logger]log4js 日志记录工具[Logger]ELK–开源的日志分析系统[Logger]winston日志模块
- 测试
Unit Testingmocha NodeJS里最常用的测试框架Unit Testingchai 一个断言库Unit TestingJest — Facebook推出的一款测试框架,集成了 Mocha,chai,jsdom,sinon等功能。BDD TestingJasmine — 一款基于行为驱动的JavaScript测试框架Testing Toolistanbul Istanbul - a JS code coverage tool written in JS 测试覆盖率E2E TestingPuppeteer
- 框架
[Framework]Express 中文版、Express of English Version[Framework]Koa 中文版、Koa of English Version[Framework]Egg 中文版、Egg of English Version[Framework]Nest.js 中文版、Nest.js
- ORM
DataBase
RelationalNoSQL- Search Engines
Microservice
- 服务注册发现之Consul [more]
[Consul]使用Consul解决了哪些问题[Consul]微服务Consul系列之服务部署、搭建、使用[Consul]微服务Consul系列之集群搭建[Consul]微服务Consul系列之服务注册与服务发现[Question]微服务Consul系列之问题汇总篇
- 消息中间件之RabbitMQ [more]
[RabbitMQ]主流消息中间件简介[RabbitMQ]RabbitMQ安装、部署、启动- Mac版安装
- Linux系统(Ubuntu、CentOS)安装
- 运行与启动
[RabbitMQ]RabbitMQ延迟队列实现定时任务
- 轻量级数据通信
HTTP协议
- http三次握手 [more]
[HTTP三次握手]三次握手时序图[HTTP三次握手]三次握手数据包详细内容分析[HTTP三次握手]分析总结[面试]说下TCP三次握手的过程?,参考:三次握手时序图
- 跨域CORS [more]
[CORS]跨域形成原理简介[CORS]实例来验证跨域的产生过程[CORS]基于http协议层面的几种解决办法[CORS]CORS预请求[面试]你之前遇见过跨域吗?说一下跨域的形成与实现。,参考:CORS
- 缓存头Cache-Control的含义和使用
[Cache-Control]可缓存性(public、private、no-cache)[Cache-Control]到期 (max-age、s-maxage、max-stale)[Cache-Control]重新验证 (must-revalidate、proxy-revalidate)[Cache-Control]其它 (no-store、no-transform)[Cache-Control]缓存cache-control示例
- HTTP长链接
[KeepAlive]http长链接简介[KeepAlive]http/1.1中长链接的实现示例[KeepAlive]长链接在http2中的应用与http/1.1协议中的对比[面试]Chrome浏览器允许的一次性最大TCP并发链接是几个?,参考:HTTP长链接分析
- Nginx服务配置
[Nginx]Nginx安装启动[Nginx]修改hosts文件配置本地域名[Nginx]Nginx配置缓存[Nginx]nginx部署https服务[Nginx]实现http2协议
DevOps
- Node.js生产环境完整部署指南 [more]
[Node.js]用户权限管理及登陆服务器[Node.js]增强服务器安全等级[Node.js]Node.js生产环境部署[Node.js]Nginx端口映射[Node.js]Mongodb生产环境部署[Node.js]实现服务器与第三方仓库的关联-PM2代码部署
- NPM模块管理 [more]
[NPM]npm源设置[NPM]nnpm注册登录[NPM]npm module 发布[NPM]可能遇到的问题
- Linux系统问题汇总 [more]
工具
- Git [more]
[Git]Git常用命令及日常问题集锦
- SEO [more]
[SEO实战]SEO网站优化title设置与快速排名
资料
未完待续,持续更新中。。。
16 回复
👍
手动点赞
mark
mark
好文,但是很多链接有问题哦!
mark
@JsonMa 之前目录做过调整,我会在检查下的 有问题我没发现的可以提出来哈 我做调整!🤝
mark
mark
好文
手动点赞
mark
mark
增加域名在线预览:https://www.nodejs.red/
真是棒, 感觉省了好多力气
@Luyakus 谢谢!有好的文章欢迎分享哈!