昨天在一个前端群里发生了一件很有意思的事。群员A在群里提了一个关于内联元素排列间隙的问题群员B帮A解决了这个问题,两人聊了起来,发现两人都是自学前端,学历都是普通二。但是A的月薪是10K,B的月薪只有6K。今天就借这件事跟大家聊聊为什么也是自学前端。有的人第一份工作能拿到10K,有的人只能拿到6K。在谈这个话题之前,我们先排除学历、天赋等不可改变的因素,谈谈作为一个普通人应该怎么做才能在第一份工作中拿到更高的薪水。选好城市城市的发展有良性循环,也有恶性循环。基础设施完善、就业岗位多的大城市,会吸引更多的人才。人口越多,消费能力越强,就会吸引更多的资金投入。资本投入会产生更多的高薪工作机会,从而形成良性循环。而小城市会形成人口和资本外流的恶性循环。所以。对于前端开发来说,选择一个好的城市真的很重要。大城市起薪高,发展快。以我的两个朋友为例。他们都是湖南人。他们毕业后都去了深圳。一个待了一年,觉得一线城市太累,工作压力大,就回到长沙,一个住在深圳。住了5年,去年才回去。现在他们两个在长沙的工资分别是18K和25K。从事前端开发,一直建议可以的话去一线城市。如果我不想去一线城市,我至少应该在省会城市。2.找一个好的教程。网上有很多教程。有些教程更深入,有些则更浅。学习程度不同,待遇自然不同。比如ajax前后端交互的一般教程,学完js后会直接讲XMLHttp的API方法和使用。跨域和封装也仅限于前端代码部分的讲解和库的使用。在此基础上展开HTTP理论、交互通信原理、服务器端http服务器搭建、MIME、消息端口、监控与抓包、网络业务模型、代理缓存、cookie会话认证、安全加密、Token、JWT、oauth、会话管理、RESTful接口设计、协商契约、资源识别等原理和常识,可以让你真正了解整个交互的来龙去脉,而不是简单地照着教程照搬方法写代码。所以,一个好的教程也是你能否找到好工作的关键。因为很多初学者根本不了解这个行业,分不清教程的优劣。所以我整理了一套最系统优质的前端教程,可以加在我的学习裙子里。前三位484,中间三位757,后三位760,免费分享给大家。群里也有很多工作多年的老大,有问题可以在里面提问。希望把这个群打造成一个很好的前端圈子,然后会有很好的工作机会互相促进。3、目标薪资和议价能力大多数新手对这个行业了解不多,不知道自己能拿到多少薪资。可以在招聘网站上收集一些可以拿到10K的工作。如果您对招聘要求需要了解的事项有了一定的了解,就可以申请了。面试前刷刷面试题,面试后复习总结,有不足的地方补上,再进行下一次面试。许多公司都在面试造火箭和拧螺丝的工作。6k前端和10K前端区别不大。面试问题回答好,问你的期望薪水是多少,自信一点,10K或者11K就可以(多报1k作为议价空间),不要说8-10K,就8K。4.找有经验的老板指导你。初学者不了解这个行业,不知道如何自学,基础是否扎实,心里没有底。有时一个问题几个小时都解决不了,也会影响学习的信心。所以,一定要找一个可以指导你的人。这并不是说您被要求参加培训。很多机构表面上好像有优秀的老师,但实际上你接触不到这些优秀的老师。这些优秀的老师只录制一门课程,课程的答疑都是助教。大多数助教在这些机构学习后找不到工作。遇到问题,助教给你百度一下,帮不了你多少。真正对你有帮助的一定是大boss,能根据你的情况把问题给你解释清楚,帮你搞清楚为什么会出现这个问题,如何解决。你可以看看你身边有没有朋友是从事前端开发工作的,有的话就让他带你。如果身边没有这样做的朋友,那就借助“网友”的力量吧。可以加入我们的WEB前端开发群。有很多从业多年的前端大佬。问一个问题,你会很快得到答案。他们会告诉你你缺乏哪些知识,并与你分享他们的经验。有兴趣的可以加入我们的学习裙子,前面三个是484,中间三个是757,后面三个是760,最后给大家系统全面的学习路线。只要能掌握以上大部分知识点,15K以上的工作是非常容易找到的。如果你能全部掌握,就可以去大厂面试了。HTML/CSS3及工具部分:vscode开发工具的使用、markdown文档工具的使用、浏览器平台环境、标签基础、DTD和META语义、选择器、权重和优先级、匹配规则、浮动和清除、BFC、类名组合规则、SEO前端技巧、定位、叠加技巧、伪类、伪元素、盒模型、代码规范、性能优化、渲染原理、CSSSprites、iconfont字体图标、布局思路、布局样式css3动画、css3选择器,css3Transition,flexlayout,backgroundgradient,css3实用动画,3D模块,css3变量,em/rem/vw学完这些,你可以完成一个企业内部多页面项目实战(非仿站),PSD完整和切图,然后是JavaScript部分,需要掌握以下知识点:JavaScript概念、基本认知、发展历程、应用范围、优缺点。ECMAScript语言概述、语句语法、数据类型、运算符、隐式转换、运算规则、控制流、作用域、作用域链、作用域分析、js解释引擎、字符串属性方法、forof/forin数组属性方法、对象、广义对象概念、对象特性、存储机制、深拷贝、对象应用、工厂模式、构造函数、原型、原型链、原型指针、多重继承的封装、包装对象、this、this、js数据处理、垃圾GC、闭包原理及应用、调试方法论、浏览器控制台工具应用、面向对象开发、函数式开发纯函数、递归函数、回调函数、组合函数、缓存函数、柯里化函数、偏函数、函数防抖节流、高级函数、IIFE函数、模块化数学对象、高级数组方法(reduce、filter、map、every、some、forEach、find、findIndex、include)和其他高级对象方法(entires、defineProperty、freeze、fromEntries、assign、keys、create、hasOwnProperty),等这通过绑定、调用、应用点偏移、同步和异步、闭包模块化、数据变形处理、性能处理DOM/BOMDOM对象和方法、节点和树遍历、DOM选择器、DOM节点增删改、DOM样式操作、DOM位置获取与偏移、DOM对象与标签差异、DOM虚拟化、DOM事件、Event对象、定时器与监听、事件委托、事件代理、事件分流、事件冒泡、默认行为、事件捕获、防抖、节流,滚动,键盘行为,事件频率降低,行为锁定机制,拖动模块,碰撞检测,距离判断,三角函数,方向判断,motionFrames,弹性运动,重力加速度,DOM树,CSSOM树,渲染解析,loading,reflow,重绘,浏览器线程和阻塞。BOM深入、窗口对象、导航器、历史、屏幕、位置、spa概念、局部参数传递、日期对象使用、日期格式化封装、随机封装、DOM切片容器JS业务应用扩展JSON对象、数据分析、JSON方法、模板渲染、缓存懒加载、正则表达式RegExp、元字符、修饰符、正向查找、贪婪模式、替换方法、分组和不分组、测试、匹配和执行正则库打包、表单验证、图片预存懒加载、自定义封装滚动组件、多轮播(loop、parallax、carousel)、tab切换、楼梯导航、天花板导航、拖拽导航、JavaScript编码风格指南、控制台应用技巧ECMAScript5---ECMAScript9扩展版解读、应用环境、让、const,解构赋值,箭头函数,对象解构,重置参数解构,class,set,get,extends,super,static,privateimplementation,symbol,promise,proxy代理拦截,async/awaitobjectnewAddAPI,arrayaddAPI,字符串添加API、原型属性、对象修改、代理拦截、链式查询、空值合并运算符、BubbleBobble面向对象游戏开发HTML5/移动端开发HTML5标签及APIHTML5概念、定义、新特性、DTD对比、新H5标签,新语义H5标签,H5表单H5拖动事件视频,音频,全屏,FileReader文件流,Blob对象,sessionStorage,localStorage,网络状态,页面生命周期,网页状态监控,地理信息与定位,canvas,worker多-线程、Notifications桌面通知播放器开发canvas交互特效开发移动端适配/事件移动端适配概念、大小和分辨率原理、PPI和DPI计算、DIP和DPR设备像素概念、viewport视口概念、布局视口、视觉视口、idealviewport视口适配方案(Metaviewport)缩放设置、屏幕窗口大小API、媒体查询@media、rem适配、vwvh适配移动端适配方案、灵活rem方案、vhvw方案、复合方案、高清适配方案、mobile终端字体缩放解决方案、1px边框问题解决方案、半像素线图高清适配、image-set、thesrcset、js拼接URL技巧、IPhonex缺口适配、安全区域、fit和envMeta权限管理、兼容性优化、IOS闪屏回退页眉底部输入框问题、输入法空格问题、默认首字母大写问题、滑动卡终端样式美化和访问判断,比如ton问题进阶方法,特效应用zepto:移动jquery,DOM操作,移动事件,点击延迟处理,触摸事件组基础UI库:layerUI,easyUI,bootStrap,UI模块化,UI库使用技巧、文档解读、案例调试、Form系统iScroll、touchjs等移动事件库使用swiper:移动网站触摸滑动、轮播插件、模块化应用、源码解读art-template:模板引擎模板语法、渲染方式、native模板引擎实现CSS预处理:sass,lessusestylus深度学习,预处理语法,css编程,敏信,预处理函数,继承,嵌套vscode高级插件及配置liveserversass模板应用,预处理应用date-picker移动端原生组件开发需求分析、业务规则、技术栈选择、文件输出规则、技术分析MVC模型概念与设计、业务逻辑分类视图层适配方案原型布局构建模板生成工具功能开发、面向对象业务设计功能类日期对象开发交互业务封装模块对接优化设计面向对象高级编程Nodejs与工程开发部分Node原生基础Node基本概念、NPM命令、V8引擎概念、JavaScript模块化CMDAMDUMD、EventLoop事件循环、同步异步、阻塞与非阻塞、taskqueue,macrotask,microtask,nativeNode模块,核心模块和require,模块,触发事件和路径模块,fs模块,Buffer对象,URL模块,HTTP模块,streamNode原生包HTTP和文件服务器NodeframeworkexpressframeworkUse,middleware、核心对象、路由配置、模板引擎、数据脚本、Router核心、CORS配置、错误处理、验证封装、PM2管理、nodemoon管理MORGAN日志处理、查询正则捕获、中间件bodyParse等第三方中间件的开发、使用、文件流上传下载、文件流切分、webpack工程搭建、工程概念、工程工具介绍、webpack基础知识、webpack配置与运行、plugin插件、loader使用、进出配置、模块模块、依赖处理、devServertarget、文件拆分、构建打包、热处理、包管理、性能优化、测试处理、使用第三方插件、babel等前端数据interactionHTTP通信交互原理、请求响应、MIME、URIAddress、消息解析、端口、消息流、测试监控抓包、TCP/IP握手机制、网络业务模型代理、缓存、网关、隧道等概念、方法和请求header分类基本XMLHTTPRequest对象方法属性、方法、ajax异步交互、同源策略原理原生js封装ajax交互、jqueryajax封装交互、jsonp跨域处理、cors跨域处理、携带cookies及跨域处理、代理服务器跨域处理、cookie验证与通信、axios库使用代理、封装、拦截、合并、二次封装通信加密策略、数据对称加密、数据非对称加密、RSA加密实践、MD5加密实践登录注册与认证机制、真实性认证、Token认证、JWT认证、会话状态管理、oauth认证RESTful接口设计RESTful设计原则、状态码设计与规范、服务器响应规则与格式、前端接口协议制定、传统RESTful改进API设计规范、资源位置、JSON模式、契约描述、资源标识、缓存友好API、HTTP头管理、文档定义、松耦合原则、一致性、重用、稳定性原则数据库存储MongoDB基本概念、NoSQL和SQL、CAP定理、RDBMS、MongoDB语法,指令,监控和GUI,MongoDb驱动,Mongoose应用数据库创建,集合增删改查,文档增删改查,数据库查询,高级查询操作,通道查询,多条件查询,反向过滤,索引处理,aggregate聚合管道、validation验证、人口表、中间件处理、查询ERROR类二次封装博客后台项目实战数据库设计、服务器路由搭建、接口设计与API管理、通信交互管道封装、注册登录、路由导航、前台-端路由管理、权限管理、用户管理、分类管理、标签管理、文档章节管理、模块化功能封装、验证库封装、承诺链行为封装、异步模块处理、SPA单页应用初级实现、原生集中式行为控制器、模板化+模块化+预处理+工程化实现前端页面组件封装Component基本概念、组件设计原则、组件封装、组件耦合与解耦、工程化+模板化+模块化实现原生组件功能、vue框架部分vue基础vue开发准备、工具与插件、mvcmvpmvvm设计理念、原生js实现MVVM核心框架、vue设计模式、生命周期、命令和属性、组件化数据驱动和双向绑定、虚拟DOM概念原理、模板语法、条件和列表、数组监控、计算属性、事件处理、修改和表单,listener,filter,methodswatchcomputedfilter比较,组件开发,动态组件,组件通信,高级组件通信,slot,vue动画,实例对象,set,get,nextTick,vue插件vueEngineeringBabel,webpack配置vue,vuesingle-文件组件、vue-cli、工程平台处理、postCss、animate、core、socket、lodash工具、vue-cli插件、presets、静态资源处理、环境变量和电影或切换、工程部署、工程构建vueRoutervue路由概念、嵌套路由、路由视图、动态路由、路由匹配、程序化导航、历史、hash模式管理、命名视图、重定向和别名、导航守卫、路由元信息、滚动延迟加载导航vuex的故障处理vuex核心概念,EventBus比较、状态管理模式、Store、state、getter、mutation、action、moudulvuex辅助函数及API函数、vuex环境选择、vuex模块化处理规则与技巧、对象样式提交方式、模块复用等vue项目实战vue博客项目实战PC+移动端、elementUI、vantUI、websocket聊天室、虚拟娃娃、vueScroll、store、qs、nprogress、编辑器、文章分类、词云效果、spa单页应用、移动PC无缝切换、完整注册和登录、vue加密认证、http包管理、错误处理包、vuex核心状态管理、本地存储状态更新、token处理、文章富文本编辑、点赞、收藏、访问、评论、组件封装、组件复用、组件混合、进阶组件开发、复合组件通信、vue处理原生DOM行为、vue常见错误处理、重置vue数据响应、个人信息修改、头像上传、通知组件打包、postcss应用、项目打包优化。
