先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7
深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年最新Web前端全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上前端开发知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
如果你需要这些资料,可以添加V获取:vip1024c (备注前端)
正文
-
Express - 一个为构建单页、多页以及混合 Web 应用程序提供强大的功能的 Web 应用程序框架
-
Feathers - 受 Express 启发的微服务框架
-
LoopBack - 用于创建 REST API并轻松连接到后端数据源的强大框架
-
Meteor - 一个超简单、位于程序数据库和用户界面之间、保持二者之间数据同步更新的纯 Javascript Web 框架。(你可能会喜欢 awesome-meteor)
-
Restify - 帮助你构建正确的REST Web 服务
-
ThinkJS - 支持 ES2015+ 的WebSockets REST API 框架
-
ActionHero - 用于为 TCP sockets,WebSocket 和 HTTP 客户端创建可重用、可扩展 API 的框架
-
Next.js - 极简化的 JavaScript 服务端渲染框架
-
Nuxt.js - Vue.js 服务端渲染框架
-
seneca - 编写微服务的工具包
-
AdonisJs - 基于依赖注入和 IoC 容器技术的 Node.js 的真正 MVC 框架.
-
Hemera - 基于 NATS 编写的可靠且容错的微服务
-
Micro - 使用异步实现的极简微服务框架
-
Moleculer - 快速而强大的微服务框架
-
Fastify - 快速和低开销的 Web 框架
-
Nest -受 Angular 启发的框架,用于构建高效且可扩展的服务器端应用程序
-
Zeronode - 用于 Node.js 微服务的最小化构建块
-
TypeGraphQL - 使用类和装饰器的,用 TypeScript 编写 GraphQL API 的现代框架
-
TinyHttp - 类似于 Express 的现代、快速的 Web 框架
-
Marble.js - 基于 TypeScript 和 RxJS 的,用于构建服务端应用的函数式编程框架
文档相关
-
documentation.js - 支持 ES2015+ 和流程注释的 API 文档生成器
-
ESDoc - 面向 ES2015 的文档生成器,附加测试代码并评估文档覆盖范围
-
Docco - 生成一个在代码中混合注释的 HTML 的文档生成器
-
JSDoc - 类似于 JavaDoc 或 PHPDoc 的 API 文档生成器
-
Docusaurus - 基于 React 和 Markdown 的文档生成器,具有多语言和版本控制功能
文件系统
-
del - 使用 globs 删除文件/文件夹
-
globby - 支持多种模式的 Glob 文件
-
cpy - 文件拷贝
-
rimraf - 像
rm -rf
一样的递归删除 -
make-dir - 像
mkdir -p
一样的递归创建目录 -
graceful-fs - 功能增强版的
fs
模块 -
chokidar - 像 macOS 上使用原生
fsevents
一样监听fs.watch
和fs.watchFile
的文件系统监听器 -
find-up - 沿父目录向上查找文件
-
proper-lockfile - 进程间和机器间 lockfile 工具
-
load-json-file - 读取、解析 JSON 文件
-
write-json-file - 自动将 JSON 序列化写入到文件
-
fs-write-stream-atomic - 类似
fs.createWriteStream()
的原子操作 -
filenamify - 将字符串转换为有效的文件名
-
lnfs - 像
ln -fs
一样,强制创建符号链接 -
istextorbinary - 检查文件是文本还是二进制
-
fs-jetpack - 完全重新设计的、方便日常使用的文件系统 API
-
fs-extra - 增加额外方法的
fs
模块 -
pkg-dir - 查找 npm 包的根目录
-
filehound - 灵活、流畅的用于文件系统搜索的接口
-
move-file - 甚至可以跨设备使用的移动文件工具
-
tempy - 随机获取临时文件或目录的路径
流程控制
-
Promises
-
- 更多
-
Bluebird - 致力于创新功能和性能的 Promise 库
-
pify - 将 callback 风格的函数转化为 Promise 风格
-
delay - 延迟执行 Promise
-
promise-memoize - 拥有过期时间和预加载功能的 Promise 返回值缓存工具
-
valvelet - 限制 Promise 访问频率的工具
-
p-map - 可以使用 Promise 的 Map 方法
-
Observables
-
- zen-observable - Observables 的实现
-
RxJS - 响应式编程
-
observable-to-promise - 将 Observable 转换为 Promise
-
更多…
-
Streams
-
- Highland.js - 仅使用标准JavaScript 和类似 Node 的流,即可轻松管理同步和异步代码
-
Callbacks
-
- each-async - 异步并发迭代器,如 forEach
-
async - 提供简单,强大的功能来处理异步问题
-
Channels
-
- js-csp - 为 JavaScript 提供连续的通信(例如 Clojurescript core.async 或 Go)
文件流
-
through2 - 基于 streams2 的轻量流转换器,避免显示子类噪声
-
from2 - 方便使用的对 ReadableStream 的封装,灵感来自于
through2
-
get-stream - 以字符串或 Buffer 的形式获取流
-
into-stream - 将 buffer/string/array/object 转化为流
-
duplexify - 将可写和可读流转换为单个stream2 双工流
-
pumpify - 将一系列流合并为单个双工流
-
peek-stream - 转换流,让你可预览第一行再决定如何解析它
-
binary-split - 换行符(或任何定界符)分隔符流
-
byline - 超简单的逐行流读取器
-
first-chunk-stream - 转换流中的第一个块
-
pad-stream - 填充流中的每一行
-
multistream - 将多个流合并为一个流
-
stream-combiner2 - 从管道输出流
-
readable-stream - Streams2 and Streams3 核心实现镜像
-
through2-concurrent - 同时转换对象流
实时
-
µWebSockets - 高可扩展度的 WebSocket 服务器和客户端库
-
Socket.io - 实现基于事件的实时双向通信
-
Faye - 基于 Bayeux 协议的实时客户端-服务器消息总线
-
SocketCluster - 可运行多 CPU 核心的可扩展的 HTTP + WebSocket 引擎
-
Primus - 实时框架的抽象层,用于防止模块锁定
-
deepstream.io - 可扩展的实时微服务框架
-
Kalm - 低层级 socket 路由和中间件框架
-
MQTT.js - MQTT 客户端——构建在 TCP/IP 协议上的基于 Pub-sub 的消息协议
-
rpc-websockets - 基于 WebSocket 实现的 JSON-RPC 2.0
-
Aedes - 可以在任何流服务器上运行的 MQTT 准系统
图像
-
sharp - 超快速的用于调整 JPEG,PNG,WebP 和 TIFF 图像大小的模块
-
image-type - 检测 Buffer / Uint8Array 的图像类型
-
gm - GraphicsMagick 和 ImageMagick 的封装
-
lwip - 不需要 ImageMagick 的轻量级图像处理器
-
pica - 轻量级、高性能的纯 JS 实现的图片尺寸调整器(lanczos3), 当不允许像素化时用
canvas drawImage()
替代 -
jimp - 纯 JavaScript 中的图像处理
-
probe-image-size - 无需完全下载即可获取大多数图像格式的大小
-
qrcode - 二维码和条形码生成器
文本
-
iconv-lite - 转换字符编码.
-
string-length - 获取字符串的真实长度-通过正确计算星号并忽略ansi转义码.
-
camelcase - 将破折号/点号/下划线/空格分隔的字符串转换为驼峰式,案例:foo-bar→fooBar.
-
escape-string-regexp - 转义RegExp特殊字符.
-
execall - 在字符串中查找多个RegExp匹配项.
-
splice-string - 移除或替换字符串的一部分
Array#splice
. -
indent-string - 缩进字符串中的每一行.
-
strip-indent - 从字符串的每一行中除去前导空格.
-
detect-indent - 检测代码缩进.
-
he - HTML实体编码器/解码器.
-
i18n-node - 具有动态JSON存储的简单翻译模块.
-
babelfish - i18n,复数的语法非常简单.
-
matcher - 简单通配符匹配.
-
unhomoglyph - 规范化视觉上相似的unicode字符.
-
i18next - 国际化框架.
-
nanoid - 小巧、安全、URL友好、唯一的字符串ID生成器.
数字
-
random-int - 生成随机整数
-
random-float - 生成随机浮点数
-
unique-random - 生成连续唯一的随机数
-
round-to - 将数字四舍五入到指定的小数位数:
1.234
→1.2
数学
-
ndarray - 多维数组
-
mathjs - 庞大的数学公式库
-
math-clamp - 三个数中取出中间值
-
algebra - 代数
-
multimath - 使用 WebAssembly 和 JS 创建快速图像数学的核心
日期
-
Luxon - 用于处理日期和时间的库
-
date-fns - 现代日期工具
-
Moment.js - 分析、验证、操作和显示日期
-
Day.js - Moment.js 之外可选的使用 Immutable 的日期库
-
dateformat - 日期格式化
-
tz-format - 带时区格式化时间:
2015-11-30T10:40:35+01:00
-
cctz - 快速解析, 格式化, 和时区转化工具
URL
-
normalize-url - 规范化 URL
-
humanize-url - 可读化 URL:
http://sindresorhus.com
→sindresorhus.com
-
url-unshort - 将短地址还原
-
speakingurl - 通过音译从字符串生成子段
-
linkify-it - 具有完整 Unicode 支持的链接模式检测器
-
url-pattern - 比 regex 字符串更简单的 URLs 和其他字符串的模式匹配
-
embedza - 使用 oEmbed、Open Graph、meta 标记中的信息从 url 创建 HTML 片段/嵌入
数据校验
-
joi - JavaScript 对象的对象模式描述语言和验证器
-
is-my-json-valid - 极速 JSON 格式校验工具
-
property-validator - 用于 Express 的属性校验工具
-
schema-inspector - JSON API 清理和验证
-
ajv - 最快的 JSON 概要验证器,支持 v5、v6 和v7 方案
-
Superstruct - 简单基础的 JavaScript 和 TypeScript 数据验证器
解析
-
remark - 插件化的 Markdown 处理器
-
markdown-it - 100% 支持 CommonMark、扩展和语法插件的 Markdown 解析器
-
parse5 - 快速全功能规范兼容的 HTML 解析器
-
strip-json-comments - JSON 去除注释
-
strip-css-comments - CSS 去除注释
-
parse-json - 有更多错误提示的 JSON 处理工具
-
URI.js - URL 转化工具
-
PostCSS - CSS 解析、压缩工具
-
JSONStream - 流式处理 JSON.parse 和 stringify
-
csv-parser - 旨在比其他任何工具都快的流式 CSV 解析器
-
PEG.js - 简单的具有出色错误报告功能的语法分析器生成器
-
x-ray - Web 爬虫工具
-
nearley - 简单,快速,强大的 JavaScript 解析器
-
binary-extract - 无需解析整个对象就可以从 JSON 缓冲区中提取一个值的工具
-
Stylecow - 可扩展插件的,用于解析,操纵和转换现代 CSS 的工具,使其与所有浏览器兼容
-
js-yaml - 快速的 YAML 解析器
-
xml2js - XML 到 JavaScript 对象的转换器
-
Jison - 友好的 JavaScript 解析程序生成器. 与 Bison, Yacc 和 family 一样的思路
-
google-libphonenumber - 解析、格式化、存储和验证电话号码
-
ref - 读/写缓冲区中的结构化二进制数据
-
xlsx-populate - 读/写 Excel XLSX
-
Chevrotain - 非常快速且功能丰富的 JavaScript 解析程序构建工具包
-
fast-xml-parser - 验证和解析 XML
人性化
-
pretty-bytes - 将字节数转换成可读的字符串:
1337
→1.34 kB
-
pretty-ms - 将毫秒数转化为可读时间字符串:
1337000000
→15d 11h 23m 20s
-
ms - 小巧的毫秒转换工具
-
pretty-error - 简化的错误信息
-
read-art - 从任何页面提取可读内容
压缩
-
yazl - 压缩
-
yauzl - 解压缩
-
Archiver - 流式接口的文件归档工具,支持 ZIP 和 TAR 格式
-
pako - javascript 的高速 zlib 端口(deflate, inflate, gzip)
-
tar-stream - 流式 tar 解析器和生成器,另见tar-fs.
-
decompress - 解压模块,支持
tar
、tar.gz
和zip
文件开箱即用
网络
-
get-port - 获取一个空闲的端口
-
ipify - 获取你的公网 IP 地址
-
getmac - 获取电脑的 MAC 地址
-
DHCP - DHCP 客户端和服务器
-
netcat - 纯 JS 实现的 Netcat 端口
数据库
-
数据库驱动
-
- PostgreSQL - 使用纯 JavaScript 和原生 libpq 实现的 PostgreSQL 客户端
-
Redis - Redis 客户端
-
LevelUP - LevelDB
-
MySQL - MySQL 客户端
-
couchdb-nano - CouchDB 客户端
-
Aerospike - Aerospike 客户端
-
Couchbase - Couchbase 客户端
-
MongoDB - MongoDB 驱动
-
ODM / ORM
-
- Sequelize - 支持 PostgreSQL,SQLite,MySQL 以及更多数据库的 ORM
-
Bookshelf - Backbone.js 风格的PostgreSQL,MySQL 和 SQLite3 的 ORM
-
Massive - PostgreSQL 数据访问工具
-
Mongoose - 优雅的 MongoDB 对象建模
-
Waterline - 与数据存储区无关的工具,可大大简化与一个或多个数据库的交互
-
OpenRecord - 类似于 ActiveRecord 的,用于 PostgreSQL,MySQL,SQLite3 和 RESTful 数据存储的 ORM
-
pg-promise - 基于 Promise 的使用原生 SQL 的 PostgreSQL框架
-
slonik - 具有严格类型,详细日志记录和断言的 PostgreSQL 客户端
-
Objection.js - 基于 SQL 查询生成器 Knex 的轻量级 ORM
-
TypeORM - 支持 PostgreSQL,MariaDB,MySQL,SQLite 等数据库的 ORM
-
MikroORM - TypeScript 的基于数据映射的 ORM,使用工作单元和身份映射模式,支持 MongoDB,PostgreSQL,MySQL 和 SQLite
-
Prisma - TypeScript 的自动生成类型并且类型安全的查询构建器,可用于替代 ORM 的现代数据库接入方式,支持 PostgreSQL, MySQL 和 SQLite
-
Query builder
-
- Knex - 旨在灵活,可移植且易于使用的 PostgreSQL,MySQL 和 SQLite3 的查询构建器
-
其他
-
- NeDB - 用 JavaScript 编写的嵌入式持久化数据库
-
Lowdb - 由 Lodash 支持的小型 JavaScript 数据库.
-
Keyv - 支持多后端的简单键值存储
-
Finale - 基于 Sequelize 模型生成 RESTful 末端
-
database-js - 对多种数据库支持的具有类似 JDBC 数据库连接的封装
-
Mongo Seeding - 使用 JavaScript 和 JSON 文件填充 MongoDB 数据库
-
@databases - 避免 SQL 注入风险的纯 SQL 查询方式,支持 PostgreSQL, MySQL 和 SQLite3
测试
-
AVA - 面向未来的测试运行程序
-
Mocha - 功能丰富的测试框架,使得异步测试简单而又有趣
-
nyc - 基于 istanbul 构建的代码覆盖工具,可用于子流程.
-
tap - TAP 测试框架
-
tape - TAP 生产测试
-
power-assert - 通过标准的 assert 接口提供描述性断言消息
-
Mochify - 基于 Browserify,Mocha,PhantomJS 和 WebDriver 的测试驱动开发
-
trevor - 针对多个版本的 Node.js 运行测试,而无需手动切换版本或推送至 Travis CI
-
loadtest - 使用自动化 API 为 Web 应用程序运行负载测试
-
Sinon.JS - 测试数据模拟
-
navit - PhantomJS/SlimerJS 封装,用于简化浏览器测试脚本
-
Nock - 模拟 HTTP 请求和异常
-
intern - 代码测试栈
-
toxy - 可追踪的 HTTP 代理,用于模拟故障场景和网络状况
-
hook-std - stdout/stderr 的钩子和修饰
-
testen - 使用 NVM 针对多个版本的 Node.js 运行本地测试
-
Nightwatch - 基于 Selenium WebDriver 的自动化 UI 测试框架
-
WebdriverIO - 基于 WebDriver 协议的自动化测试
-
Jest - 简单的 JavaScript 测试
-
TestCafe - 自动化的浏览器测试
-
abstruse - 持续集成服务器
-
CodeceptJS - 端到端测试
-
Puppeteer - 无头 Chrome
-
Playwright - 用单一 API 实现 Chromium, WebKit 和 Firefox 内核的无头浏览器
-
nve - 在本地多个版本的Node.js上运行任何命令
-
axe-core - 自动化 Web UI 测试引擎
-
testcontainers-node - 提供轻量级的,即用即停的常规数据库、Web 浏览器或者其他任何可以运行在 Docker 容器里的实例
安全
-
upash - 为所有密码散列算法提供统一的 API
-
themis - 使典型加密方案易于使用的多语言框架:静态数据、已验证的数据交换、传输保护、身份验证等
-
GuardRails - 在请求中提供安全反馈的 GitHub 应用程序
-
rate-limiter-flexible - 暴力攻击和 DDoS 攻击防御
-
crypto-hash - 异步非阻塞哈希
-
jose-simple - 使用 JOSE( JSON 对象签名和加密)标准对数据进行加密和解密
基准化分析
-
Benchmark.js - Benchmarking 库,支持高分辨率计数器并且返回有意的统计结果
-
matcha - 简化的 Benchmarking 实现方案
代码压缩
-
babili - 基于 Babel 工具链的 ES2015+ 压缩库
-
UglifyJS2 - JavaScript 压缩工具
-
clean-css - CSS 压缩工具
-
minimize - HTML 压缩工具
-
imagemin - Image 压缩工具
认证
-
Passport - 简单, 无感的身份验证
-
Grant - 支持 Express, Koa, Hapi, Fastify, AWS Lambda, Azure, Google Cloud, Vercel以及其他库的权限校验中间件
授权
-
CASL - UI 和 API 的同构授权
-
node-casbin - 支持访问控制模型(如 ACL、RBAC 和 ABAC )的授权库
电子邮件
-
Nodemailer - 处理电子邮件的最快方式
-
emailjs - 向任何 SMTP 服务器发送带有附件的文本 / HTML 电子邮件
-
email-templates - 创建、预览和发送自定义电子邮件
-
MJML - 旨在减少创建响应式电子邮件困难的一种标记语言
任务队列
-
bull - 持续作业和消息队列
-
agenda - 基于 MongoDB 的作业调度工具
-
idoit - 基于 Redis 的具有高级作业控制的队列引擎
-
node-resque - 基于 Redis 的作业队列
-
rsmq - 基于 Redis 的消息队列
-
bee-queue - 高性能的基于 Redis 的任务队列
-
RedisSMQ - 具有实时监控功能的简单高性能 edis 消息队列
-
sqs-consumer - 在没有样板文件的情况下构建基于 Amazon 简单队列服务(SQS)的应用程序
-
better-queue - 不需要 Redis 的简单高效的作业队列
Node.js 管理
-
n - Node.js 版本控制
-
nave - Node.js 虚拟环境
-
nodeenv - 与 Python virtualenv 兼容的Node.js 虚拟环境
-
nvm for Windows - Windows node 版本控制工具
-
nodenv - 类似于 Ruby rbenv 的版本管理器,支持自动版本切换
自然语言处理
-
retext - 一个可扩展的自然语言系统
-
franc - 检测文本语言
-
leven - 使用 Levenshtein 距离算法检测两个字符串之间的差异
-
natural - 自然语言设施
-
nlp.js - 构建机器人,具有实体提取、情感分析、自动语言识别等功能
进程管理
-
PM2 - 高级进程管理工具
-
nodemon - 监听代码变动并自动重新启动服务器
-
node-mac - 将脚本作为 Mac 守护进程运行并把日志输出到控制台
-
node-linux - 将脚本作为本机系统服务运行并输出日志到 syslog
-
node-windows - 将脚本作为 Windows 服务运行并输出日志到事件查看器
-
supervisor - 当脚本崩溃时或者当
*.js
文件更改时重新启动脚本 -
Phusion Passenger - 直接嵌入 Nginx 的易用的进程管理工具
自动化
-
robotjs - 桌面自动化:控制鼠标、键盘和阅读屏幕
-
nut.js - 集成 Jest 的具有图像匹配的跨平台原生 GUI 自动化 / 测试框架
AST
-
Acorn - 轻量、快速的 JavaScript 解析器
-
babel-parser - 用于 babel 的 JavaScript 解析工具
-
cherow - 专注于性能和稳定性的 Javascript 解析器
静态网站生成
-
Wintersmith - 灵活、简约、多平台的静态站点生成器
-
Assemble - 使用 Node.js、Grunt.js 和Yeoman 的静态站点生成器
-
DocPad - 具有动态能力和巨大插件生态系统的静态站点生成器
-
Phenomic - 基于 React 和 Webpack 生态系统的现代静态网站生成器
-
docsify - Markdown 文站点生成器
-
Charge - 使用 JSX 和 MDX 的零配置静态站点生成器
内容管理系统
-
KeystoneJS -基于 Express 和 MongoDB 的 CMS 和 web 应用平台
-
ApostropheCMS - 基于 Express 和 MongoDB 的,强调直观的前端内容编辑和管理的内容管理系统
-
Strapi - 用于构建强大 APIs 的内容管理框架(headless-CMS)
-
Tipe - 使用 schema 文件构建基于 GraphQL 和 REST API 的面向开发人员的内容管理系统
-
Factor - 基于 Vue.js 的仪表盘框架和无头 CMS
-
AdminBro - 为你所有的资源自动生成管理员界面
论坛
- nodeBB - 面向现代 web 的论坛平台
写博客
-
Ghost - 简单强大的发布平台
-
Hexo - 快速、简单而强大的博客框架
怪诞的
-
cows - ASCII cows
-
superb - 获取表达 “极好的” 意思的词汇
-
cat-names - 获取流行的猫名字
-
dog-names - 获取流行的狗名字
-
superheroes - 获取超级英雄的名字
-
supervillains - 获取超级大反派的名字
-
cool-ascii-faces - 获取酷炫的 ascii 颜文字
-
cat-ascii-faces -
₍˄·͈༝·͈˄₎◞ ̑̑ෆ⃛ (=ↀωↀ=)✧ (^・o・^)ノ”
-
nerds - 获取宅男话题的数据,例如哈利波特,星战,宝可梦
序列化
-
snappy - Google Snappy 压缩库的绑定
-
protobuf - 协议缓冲区
-
compactr - Compactr 协议
其他
-
execa - 比
child_process
更好 -
cheerio - 快速, 灵活, 为服务端设计的借鉴了 jQuery 设计的操作工具
-
Electron - 使用 Web 技术开发跨平台桌面应用 (You might like awesome-electron)
-
open - 打开网站、文件、可执行文件等
-
hasha - 使散列变得简单,获取缓冲区/字符串/流/文件的哈希
-
dot-prop - 使用
.
路径方式获取一个套嵌对象的属性 -
onetime - 执行一次性函数
-
mem - 记忆函数——一种优化技术,通过缓存相同输入函数的执行结果来加速连续函数调用
-
import-fresh - 调用模块时绕开缓存
-
strip-bom - 从字符串 / Buffer / Stream中解除 UTF-8 BOM 问题
-
os-locale - 获取系统 locale
-
ssh2 - SSH2 客户端和服务端模块
-
adit - SSH 相关工具
-
import-lazy - 懒加载一个模块
-
file-type - 获得一个 Buffer 的文件类型
-
Bottleneck - 速率限制器,使流量控制变得容易
-
ow - 函数参数验证
-
webworker-threads - 使用原生线程的轻量级 Web Worker API
-
clipboardy - 访问系统的剪贴板 (复制和粘贴)
-
node-pre-gyp - 使从二进制发布安装 Node.js C++ 插件更简单的工具
-
opencv - Javascript 的 OpenCV 封装,计算机图形处理库
-
dotenv - 从 .env 文件加载环境变量.
-
remote-git-tags - 从 git 远程仓库获取 tags
-
semver - 语义版本分析器
-
Faker.js - 测试数据批量生成工具 (推荐阅读:《2.8 万 Star!生成虚假内容的神器:faker.js》)
-
nodegit - 原生 Node 封装的 Git 工具
-
json-strictify - 安全地将值序列化为 JSON ,不丢失数据或进入无限循环
-
resolve-from - 从一个给定的路径执行某个模块的 resolve 方法
-
simplecrawler - 事件驱动的 web 爬虫程序
-
jsdom - HTML 和 DOM 的 JavaScript 实现
-
hypernova - 服务端渲染 JavascSript 视图
-
@sindresorhus/is - 检查值和类型是否匹配
-
env-dot-prop - 使用
.
路径获取、设置或删除 process.env 的嵌套属性 -
emittery - 简单而现代的异步事件发生器
-
node-video-lib - 纯 JavaScript 编写的,用于处理 MP4 和 FLV 视频文件并为 HLS 流创建 MPEG-TS 块的视频工具库
-
basic-ftp - FTP/FTPS 客户端
-
cashify - 汇率转换
-
genepi - 自动从 C++ 代码中生成 Node.js addon
-
husky - 创建 Git 钩子脚本
-
patch-package - 对 npm 依赖进行修复和保持
-
editly - 声明式视频编辑 API
下面是我在学习HTML和CSS的时候整理的一些笔记,有兴趣的可以看下:
进阶阶段
进阶阶段,开始攻 JS,对于刚接触 JS 的初学者,确实比学习 HTML 和 CSS 有难度,但是只要肯下功夫,这部分对于你来说,也不是什么大问题。
JS 内容涉及到的知识点较多,看到网上有很多人建议你从头到尾抱着那本《JavaScript高级程序设计》学,我是不建议的,毕竟刚接触 JS 谁能看得下去,当时我也不能,也没那样做。
我这部分的学习技巧是,增加次数,减少单次看的内容。就是说,第一遍学习 JS 走马观花的看,看个大概,去找视频以及网站学习,不建议直接看书。因为看书看不下去的时候很打击你学下去的信心。
然后通过一些网站的小例子,开始动手敲代码,一定要去实践、实践、实践,这一遍是为了更好的去熟悉 JS 的语法。别只顾着来回的看知识点,眼高手低可不是个好习惯,我在这吃过亏,你懂的。
1、JavaScript 和 ES6
在这个过程你会发现,有很多 JS 知识点你并不能更好的理解为什么这么设计,以及这样设计的好处是什么,这就逼着让你去学习这单个知识点的来龙去脉,去哪学?第一,书籍,我知道你不喜欢看,我最近通过刷大厂面试题整理了一份前端核心知识笔记,比较书籍更精简,一句废话都没有,这份笔记也让我通过跳槽从8k涨成20k。
2、前端框架
前端框架太多了,真的学不动了,别慌,其实对于前端的三大马车,Angular、React、Vue 只要把其中一种框架学明白,底层原理实现,其他两个学起来不会很吃力,这也取决于你以后就职的公司要求你会哪一个框架了,当然,会的越多越好,但是往往每个人的时间是有限的,对于自学的学生,或者即将面试找工作的人,当然要选择一门框架深挖原理。
以 Vue 为例,我整理了如下的面试题。
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
需要这份系统化的资料的朋友,可以添加V获取:vip1024c (备注前端)
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
或删除 process.env 的嵌套属性
-
emittery - 简单而现代的异步事件发生器
-
node-video-lib - 纯 JavaScript 编写的,用于处理 MP4 和 FLV 视频文件并为 HLS 流创建 MPEG-TS 块的视频工具库
-
basic-ftp - FTP/FTPS 客户端
-
cashify - 汇率转换
-
genepi - 自动从 C++ 代码中生成 Node.js addon
-
husky - 创建 Git 钩子脚本
-
patch-package - 对 npm 依赖进行修复和保持
-
editly - 声明式视频编辑 API
下面是我在学习HTML和CSS的时候整理的一些笔记,有兴趣的可以看下:
进阶阶段
进阶阶段,开始攻 JS,对于刚接触 JS 的初学者,确实比学习 HTML 和 CSS 有难度,但是只要肯下功夫,这部分对于你来说,也不是什么大问题。
JS 内容涉及到的知识点较多,看到网上有很多人建议你从头到尾抱着那本《JavaScript高级程序设计》学,我是不建议的,毕竟刚接触 JS 谁能看得下去,当时我也不能,也没那样做。
我这部分的学习技巧是,增加次数,减少单次看的内容。就是说,第一遍学习 JS 走马观花的看,看个大概,去找视频以及网站学习,不建议直接看书。因为看书看不下去的时候很打击你学下去的信心。
然后通过一些网站的小例子,开始动手敲代码,一定要去实践、实践、实践,这一遍是为了更好的去熟悉 JS 的语法。别只顾着来回的看知识点,眼高手低可不是个好习惯,我在这吃过亏,你懂的。
1、JavaScript 和 ES6
在这个过程你会发现,有很多 JS 知识点你并不能更好的理解为什么这么设计,以及这样设计的好处是什么,这就逼着让你去学习这单个知识点的来龙去脉,去哪学?第一,书籍,我知道你不喜欢看,我最近通过刷大厂面试题整理了一份前端核心知识笔记,比较书籍更精简,一句废话都没有,这份笔记也让我通过跳槽从8k涨成20k。
2、前端框架
前端框架太多了,真的学不动了,别慌,其实对于前端的三大马车,Angular、React、Vue 只要把其中一种框架学明白,底层原理实现,其他两个学起来不会很吃力,这也取决于你以后就职的公司要求你会哪一个框架了,当然,会的越多越好,但是往往每个人的时间是有限的,对于自学的学生,或者即将面试找工作的人,当然要选择一门框架深挖原理。
以 Vue 为例,我整理了如下的面试题。
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
需要这份系统化的资料的朋友,可以添加V获取:vip1024c (备注前端)
[外链图片转存中…(img-v8vAOcQh-1713465779604)]
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!