

生日之际,记录自己前端拼搏之路~
source link: https://juejin.im/post/5cfbcb5951882568862d69f0
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

时间过得真快!!!
生日之际,从大学到现在,自己学习并实践过认为比较有用的技术点,也是常见面试考点...
加油💪
前端学习记录
Html5
- 对WEB标准以及W3C的理解与认识
- Html5新特性与语义化
- 行内元素与块级元素
- 渐进增强与优雅降级的理解及区别
- cookie、sessionStorage、localStorage原理与区别
- CSS盒模型
- 获取盒子宽高的几种方式及区别
- Flex与Grid布局
- CSS常见选择器
- 浮动与定位
- 常见的页面布局
- CSS3新特性
- 移动端视口配置
- 文字、盒子水平垂直居中
- CSS3画三角形、六边形等
- link和@import有什么区别
- 常见兼容性问题
jQuery
- jQuery的好处
- jQuery选择器与css选择器的区别
- jQuery对象与Dom对象
- jQuery中的Ajax
- DOM元素的增删改查
DOM元素的遍历
- jQuery淡入淡出与动画
- jQuery尺寸
- jQuery事件
- window.onload 事件和 jQuery ready 函数有何不同
- 原始类型与对象类型及对象之间的转换
- 构造函数、实例、原型、原型链、继承等
- 实现继承的方式及优缺点
- typeof & instanceof
- 原生ajax
- 对象深浅拷贝
- this的理解
- 函数柯里化、高阶函数
- bind、call、apply用法及区别
- 字符串、数组、对象、日期等的属性与方法
- 浏览器对象
- Window对象
- History对象
- Location对象
- Screen对象
- 三大家族和一个事件对象
- Offset家族
- Scroll家族
- Client家族
- Event事件
- Event-Loop 事件循环
- js 运行机制
- 进程与线程
- 宏任务与微任务
- Node中的Event-Loop
- 原生DOM增删改查
- 常见的模块化
- 作用域、闭包与立即执行函数等
- 同步与异步
- 常见的循环及区别
- for...in
- for...of
- let 与 const
- 异步解决方案
- Promise
- Generator
- Async/Await
- 模块化(export & import)
- 解构赋值(主要:数组和对象)
- 数组、字符串、函数、日期等扩展方法
- 默认值、扩展运算符
- 数组forEach、some、every、map、filter、reducer等方法的使用及区别
- Proxy
Stylus Sass Less
- 常见三个预处理的用法及区别
- 常见功能
- Mixins
- 循环 & 判断
TypeScript
- TypeScript特点及理解
- Typescript常用语法
- 布尔值 boolean
- 数字 number
- 字符串 string
- 数组 number[] Array
- 元祖 Tuple
- 枚举 enum
- null & undefined
- never
- object
- Typescript集成在React项目中
- Typescript集成在Vue项目中
Webpack4.x
- Webpack配置文件常见选项
- 入口文件-entry
- 出口文件-output
- 模块-module
- 插件-plugins
- 模式-mode
- 开发服务器-devServer
- 解析-resolve
- 源码调试-sourceMap
- 常用Loader
- 处理CSS文件
- css-loader style-loader less less-loader node-sass sass-loader stylus stylus-loader
- 添加CSS3前缀
- postcss-loader autoprefixer
- 处理ES6文件及更高级语法
- babel-loader @babel/core @babel/preset-env @babel/runtime @babel/plugin-proposal @babel/plugin-proposal-class-properties @babel/plugin-transform-runtime
- 处理图片、字体等文件
- file-loader url-loader html-withimg-loader
- 处理CSS文件
- 常用Plugin
- 生成HTML文件 Html-webpack-plugin
- 删除dist目录 clean-webpack-plugin
- 压缩css文件 optimize-css-assets-webpack-plugin
- 压缩js文件 uglifyjs-webpack-plugin
- 复制目录插件 copyWebpackPlugin
- 添加版权声明 bannerPlugin
- 提取css文件 mini-css-extract-plugin extract-text-webpack-plugin
- Webpack 自带优化
- noParse 不去解析某依赖包中的依赖关系 jquery
- IgnorePlugin 加载某依赖时,忽略某文件 moment
- DllPlugin、DllRederencePlugin 动态链接库 react
- Tree-Sharking、 Scope-Hosting
- 引入依赖
- expose-loader 暴露到window上
- providePlugin 给每个模块都注入
- externals选项 CDN引入 不打包
- 定义环境变量 DefinePlugin
- 不同环境 【common、dev、prod】
- 多线程打包 happypack
- 抽离公共代码
- 懒加载 & 热加载
- 打包单页&多页应用
- Webpack跨域 & watch用法
- 优化构建速度
- 分析打包结果
- Webpack & Grunt & Gulp的区别
- 手写loader
- 手写plugin
- 手写简易版的webpack
- babylon 将源码转换成AST
- @babel/traverse 遍历节点
- @babel/types 替换节点
- @babel/generator 将替换好的节点生成
- 理解Tapable
Vue全家桶
- MVC & MVVM的理解
- Virtual DOM的理解
- 数据双向绑定 & 组件化
- Vue常见API
- 常见选项
- methods watch computed filter mixins ...
- 常用指令
- v-for v-pre v-html v-bind v-model...
- 常用组件
- transition transition-group keep-alive slot ...
set
slots
forceUpdate...
- 动态绑定class & style
- Vue生命周期
- Vue监听数组
- 组件的封装
- Vue-cli2.x & Vue-cli3.x
- 组件间的通信
- 父子组件
- 父组件向子组件 props $children
- 子组件向父组件 parent
- 非父子组件兄弟组件
- 中央事件总线 EventBus
listeners inheritAttrs
- provide inject
- 父子组件
- Vue-loader的理解
- Vue-Router的理解
- router-link
- router-view
- 导航方式
- 编程式导航
- 声明式导航
- 命名路由 & 命名视图
- name属性 -> {name:, params:}
- router-view的name属性与components对应
- 动态路由及路由组件间传参
- name + params方式
- path + query方式
- router & route的理解
- 导航守卫
- 组件内守卫
- 路由独享守卫
- 路由懒加载
- vue异步组件
- es提案的import()
- webpack的require ensure()
- Vuex的理解及使用场景
- Vuex核心概念
- State
- Getters
- Mutations
- Actions
- Modules
- 脚手架搭建Vue全家桶项目
- 服务端渲染SSR
- 首屏渲染 & SEO 问题
- Nuxt.js
React全家桶
- JSX语法
- 属性props & 状态state
- React生命周期
- React优化
- shouldComponentUpdate
- 函数组件 & 类组件 & 高阶组价
- Fiber的理解
- React Hooks
- useState
- useEffect
- useContext
- useReducer
- React-Router-Dom
- React路由的原理
- 常用API
- BrowserRouter & HashRouter
- Route
- Link & NavLink
- Switch
- Prompt
- Redirect
- match location history对象
- Redux
- 对Redux的理解
- Action创建函数
- 常用API
- State
- Action
- Reducer
- createStore
- combineReducers
- applyMiddleware
- bindActionCreators
- compose
- Store常用方法
- getState
- dispatch
- subscribe
- react-redux
- Provider
- connect
- mapStateToProps
- mapDispatchToProps
- 处理异步 redux-thunk
ReactNative & Weex
- 搭建RN环境 & Weex环境
- Flexbox布局
- 导航间数据传递
- 公共组件的封装
- 常用组件
- 列表组价 FlatList (上拉刷新、下拉加载)
- 数据存储组件 AsyncStorage
- 提示符组件 ActivityIndicator
- 滚动组件组件 ScrollView
- 状态栏组件 StatusBar
- 加载网页组件 WebView
- 动画组件 Animated
- 样式组件 StyleSheet
- 获取屏幕组件 Dimensions
- RN项目常用第三依赖
- 图片缩略图
- react-native-image-picker
- react-naitve-progress
- react-native-image-resizer
- 导航
- react-navigation
- react-native-router-flux
- 启动屏
- react-native-splash-screen
- 微信 & 支付宝支付
- react-native-wechat
- react-native-yunpeng-alipay
- 热更新
- react-native-code-push
- 图片缩略图
- 视图组件库
- antd-mobile-rn
- RN项目安卓 & IOS打包
后端学习记录
- 对Node的认识
- 事件循环 & EventEmitter
- 创建简单的服务器
- 模块化
- exports
- module.exports
- 核心模块
- buffer
- stream
- http & https
- process
- 使用Node开发企业官网项目
Express
- request & response对象属性和方法
- GET & POST请求
- 静态文件 static
- 路由中req, res对象中的属性
- 对中间件的理解
- 常用中间件
- body-parser
- cookie-parser
- 对Koa2的理解
- 与Express的区别
- 理解核心对象
- Application
- Context
- Request
- Response
- 常见中间件
- 中间件的概念
- koa-body
- koa-bodyparse
- koa-multer
- koa-router
- koa-static
- koa-compose
- Koa2路由的使用
- JDK安装
- 常见数据类型的属性与方法
面向对象的特性
- 集合类
- Collection
- List Arraylist LinkedList
- Set HashSet
- Map HashMap
- Vector
- 实现方式
- 继承Thread类
- 实现Runnable接口
- 创建Java连接Mysql、Redis工具类
- 理解Java项目的MVC三大架构
- 整合SSH项目
- Spring
- SpringMVC
- MyBatis
SpringBoot
- SpringBoot的使用及优点
- 配置文件格式
- .properties
- 搭建SpringBoot+MyBatis项目
- SpringBoot项目中常用注解
- SpringBoot项目实现分页和排序功能
- SpringBoot整合Swagger
Http协议与数据请求
- Http请求与响应对象
- TCP三次握手、四次挥手
- Http常见方法与状态码
- 方法
- DELETE
- 状态码
- 1xx 信息类
- 2xx 成功类
- 3xx 重定向
- 4xx 客户端错误
- 5xx 服务端错误
- 长连接与管线化
- Etag & Expires & Cache-control等理解
- 兼容版原生Ajax
- Fetch
- Axios
- Flyio
- 从输入URL到页面加载的全过程
- 浏览器缓存
- 重绘 & 回流
- 常见浏览器及其内核
- 数组
- 扁平化数组
- 求数组中最大值和最小值
- Git
- git clone
- git status
- git add .
- git commit -am 'xxxx'
- git pull origin dev
- git push -u origin dev
- git branch / -r
- git checkout dev
- git stash
- GitHub & GitLab & Gitee
- 如何创建在这些平台上常见代码仓库
- 如何将本地项目与远程仓库关联
- 使用GitHub搭建个人博客
UI层框架
- BootStrap
- iView
- Andt Design
- Element UI
- MySql
- Mac上安装Mysql
- Mysql常见增删改查SQL语句
- Java连接Mysql
- Node连接Mysql
- MonogoDB
- Mac上安装MonogoDB
- MonogoDB常见增删改查SQL语句
- mongoose
- Node连接MonogoDB
- Redis
- Mac上安装Redis
- Redis支持的数据类型
- String
- Sorted Set
- Java使用Redis
- Node使用Redis
- 微信小程序
- 理解微信小程序的原理
- 基础
- tarBar
- 授权获取用户信息
- 上拉刷新 & 下拉加载
- request请求
- 各个文件代表的意思
- 页面跳转及传递参数
- 代码审核与发布
- 常用组件
- scroll-view
- swiper
- MpVue
- 语法和vue很像
- VSCode & WebStrom & IDEA
- VSCode常用插件
- WebStorm与IDEA永久安装
- 常用快捷键
部署与运维
- Linux
- Mac上安装Linux
- Linux目录结构及说明
Linux在工作中常用指令
- FileZilla & XShell & WinSCP
- Mac上这些软件的安装
- 如何连接远程服务器
- 防抖与节流
- 图片懒加载
常见第三方依赖库
- axios
- better-scroll
- lodash
- moment
- webpack4从零搭建Vue全家桶项目
- webpack4从零搭建React全家桶项目
- 使用VuePress搭建自己的技术博客
项目中常见错误
- 移动端1像素边框
- 彻底掌握Webpack4.x & 手写简易版Webpack
- 彻底掌握常见的跨域方式与实现原理
- 手写简易版Express
- 手写简易版Koa2
- 手写简易版React-Router
- 手写简易版React & React-Diff
- 手写简易版Vue框架的MVVM实现
2019年目标
- 编写以上每个技术中核心知识点博客
- 系统学习前端
- HTML5
- 原生JS基础
- ES6 7 8 9 10
- Vue深入理解与源码学习
- React深入理解与源码学习
- 学习Flutter
- 学习前端常见设计模式
- 学习JavaScript数据结构与算法
非常喜欢的一段话:在我们20岁的时候用30岁的心态来做事,那么当我们30岁的时候就可以享受别人40岁的成功!~💪💪💪
如果本文对你有帮助得话,给本文点个赞❤️❤️❤️
欢迎大家加入,一起学习前端,共同进步!
Recommend
-
59
本文教你如何用代码表达对自己的生日快乐之祝福或者对女孩的爱慕之情,具体如何应用大家可以发散思维,例如情人节给暗恋的女孩发一个 JS 文件过去表白,或者是清明节的时候用代码烧个香,祭奠死去的爱情之类的。 直接看效果吧。 在线地址: github.com/xiny
-
37
-
8
大盘横盘震荡之际,认清自己,厚积薄发!(*本文附:撸空项目-001 CIN - 价值 1000 ) 前 言 2021 年 6 月 8 号,519 暴跌过去不到一个月,恐慌还是弥漫于币圈的每个角落,目前疫情已经得到全面的控制,疫苗的接种率也全面提升,全球已经逐渐恢...
-
11
你在赛场上拼搏,我用画笔记录你的精彩瞬间 奥运手绘大赛 /
-
6
90后:为生活拼搏的自己 | GPLP犀牛财经 Connect with us 很多朋友都问我,后悔来北京吗?...
-
2
【精】35岁正当年,生日之际送自己薄礼一份【路虎揽胜传世经典】 楼主 来自: 北京
-
6
“谷含量”升温背后:打破界限、拼搏 赢得青年人共鸣 0评论 2022-02-25 09:26:00 来源:中国网科技 ...
-
5
【女性力量】致每一个为梦想拼搏的中国女性-优麒麟|Linux 开源操作系统 了解优麒麟最新资讯,关注社区和产品动态。
-
6
Android摸索记录--设置生日提醒如果您发现本文排版有问题,可以先点击下面的链接切换至老版进行查看!!!Android...
-
5
2023年终总结:拉帮结伙,拼搏探索新机遇 今年是我面临最多事情的一年,同时也是我迈向自媒体领域的第...
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK