学习WEB前端要多久呀.先从什么方向开始学习哦
您好学习web前端一定要有方向,学习web前端先从核心基础开始学:
阶段1.前端核心基础
HTML +_CSS核心、JavaScript基础语法、JavaScript面向对象、JavaScript DOM和
BOM编程、jQuery框架
阶段2.HTML5 + CSS3 + 移动端核心
HTML5新特性、Canvas专列、CSS3新特性、CSS3进阶、CSS3实例演练
阶段3.移动端
移动端核心、移动端适配、移动端特效
阶段4.服务器端
服务器端开发、数据库操作、前后端交互核心、微信公众号开发
阶段5.JavaScript高级
JavaScript基础深入剖析、JavaScript面向对象深入讲解、JavaScript异步编程、
JavaScript函数式编程JavaScript设计模式
阶段6.前端必备
性能优化、版本控制工具、模块化、项目构建工具
阶段7.高级框架
React框架基本使用、React框架进阶、Vue框架基本使用、Vue框架进阶、Vue源码分析
阶段8.小程序
原生小程序入门、原生小程序API使用、小程序框架Mpvue
这个是web前端的学习方向你从上到下按照顺序学习就可以了,一般来说零基础学习前端是5个月左右的时间,学习方法就是做到3多,多问、多思考、多敲 学习的本质就是不断的重复,熟能生巧,希望可以帮到你。
Web 前端技术学习路线图
1、到底如何一步步掌握这些技术呢? 下面推荐一个学习路线图,希望对初学者有帮助。
2. Javascript 语言:全栈开发中,用的编程语言就是 javascript
3.HTML5 标签和 DOM:这是前端最核心技术,为之后学习各种开发框架,打下坚实基础。
4.CSS3:学习通过 css 开发网页和各种可视 UI 组件。
5.SASS:利用 sass 语言,开发复杂的页面 css
6.Node.js:掌握Node.js 核心 API ,具备后端开发能力。
7.Express 5.x 框架:掌握 Express 框架,从而具备快速开发后端程序的能力。
8.socket.io 库:让前后端通过 websocket协议通信,是web 开发游戏、聊天等程序必备技术。
9.Mongoose 框架:可以让程序具备文档数据储存能力
10.Git 命令与 github:可以对项目进行版本管理,从而能团队开发项目。
11.Gulp 构建工具实战:通过 gulp 工具,灵活对项目进行构建。
12.Webpack:可以用和 Node.js 后端模块化方式,开发前端程序,从而能开发大型系统。
13.Jasmine & Karma:可以利用 Jasmine & Karma 轻松实现,多种浏览器同时进行单元测试,而不必切换界面。
14.前端相关框架:JQuery / Bootstrap / Vue.js /React / Angular通过框架帮我我们快速开发程序
如果通过这套学习路线图学完,那么就业是毫无压力的,但是做为有志向的码奴,我们还需要展望未来和扩展眼界。一提到扩展眼界,有些人就会,疯狂的拿来一本永远不用技术的书,啃起来,比如你是用 html5 写前端界面的,永远用不上 QT 写界面,你买本 QT 津津有味的学起来,如果你感觉不错,那就学吧。
其实,我们学任何技术,都要讲究是否有用,技术本身是冰冷的,如果没有价值,或用不上就不必学,除非你理论计算机学家,这个职位我编出来的,不造有没有这个岗位
想要顺利找前端工作的话,必须基本功扎实,这个知识点图谱送给你!
这里罗列了具体的知识点,也是大大小小公司面试时必问的知识。你可以把它看成无聊的面试刷题,也可以看成查缺补漏的自学路线,或者看作自己基本是否扎实的检测。
HTML相关
DTD的作用是什么?什么是怪异模式?什么是标准模式?二者有什么差别(举例)?产生的历史原因是什么?使用时需要注意什么?
HTML5是什么?有哪些新特性?新增了哪些语义化标签?新增了哪些表单元素?和h5有啥关系?
你是如何理解 HTML 语义化的?
meta viewport 是做什么用的,怎么写?
HTML 和 XHTML 有什么区别?
使用 data-* 属性有什么用?
<script>、<script async> 和 <script defer> 的区别。
白屏和FOUC是什么?为什么通常推荐将 CSS <link> 放置在 <head></head> 之间,而将 JS <script> 放置在 </body> 之前?有没有例外的情况?
浏览器渲染机制?什么是回流(reflow)、重绘(repaint)?
什么属性能让浏览器直接使用ES6 Module
两种盒模型分别说一下。
如何垂直居中?
Flex 怎么用,常用属性有哪些?
Grid布局用过吗?
BFC 是什么?
CSS 选择器优先级
CSS 中 class 和 ID 的区别
CSS reset 和 CSS normalize是什么?
浮动 (Floats)元素有哪些特性?
清除浮动说一下
z-index和叠加上下文是如何形成的?在同一个层叠上下文中才能比较z-index的大小。
CSS sprites是什么
字体图标和svg图标用过吗
你日常工作是如何处理浏览器兼容的?
如何为有功能限制的浏览器提供网页?
渐进增强,优雅降级是什么?
有哪些的隐藏内容的方法?
栅格系统是什么
你用过媒体查询吗?
如何优化网页的打印样式?如果设计中使用了非标准的字体,你该如何去实现?
浏览器是如何判断元素是否匹配某个 CSS 选择器?
伪元素 (pseudo-elements) 有什么用?
列出你所知道的 display 属性的全部值
inline 和 inline-block 的区别
relative、fixed、absolute 和 static 元素的区别?
响应式设计 (responsive design) 和自适应设计 (adaptive design) 不同?
为什么提倡使用 translate() 而非 不是 absolute?
如果实现一个高性能的CSS动画效果?
圣杯布局,双飞翼布局了解吗
JS有哪几种数据类型
变量声明提升?let、var、const的区别?
ES 6 语法你平常能用到哪些?
undefined和null有什么区别?
Promise、Promise.all、Promise.race 分别怎么用?
这段代码里的 this 是什么?
箭头函数和普通函数有什么区别?如果把箭头函数转换为不用箭头函数的形式,如何转换
闭包是什么?
什么是跨域?有哪些方法?
图片懒加载的原理
动画有几种实现方式,性能对比
聊一聊DOM事件流、冒泡、捕获
事件委托是什么,封装一个事件委托函数
EventLoop是什么
宏任务微任务是什么
手写函数防抖和函数节流
手写Ajax
如何实现深拷贝?考虑循环引用的情况?
封装一个JSONP?
如何用正则实现 trim()?
不用 class 如何实现继承?用 class 又如何实现?
如何实现数组去重?
手写函数柯里化
实现一个new
实现bind、call、apply
数组拍平
手写发布订阅
手写Promise
斐波那契实现与优化
手写快速排序
讲一讲TCP协议的三次握手和四次挥手流程
为什么TCP建立连接协议是三次握手,而关闭连接却是四次握手呢?为什么不能用两次握手进行连接?
OSI有哪七层模型?TCP/IP是哪四层模型
传输层有哪些协议
应用层有哪些协议,常用端口
常见Http方法有哪些?使用场景分别是什么?
GET与POST有什么区别?
在HTML的form 标签里,method支持哪些类型?
状态码 200、301、302、304、403、404、500、503分别代表什么?
Web安全中有哪些常见的攻击方式?
一次完整的Http请求所经历哪些步骤?
URI和URL的区别?
HTTP请求报文与响应报文的格式?Http首部包含哪些字段?举例说明
Websockt是什么?和HTTP有什么区别?
常见的鉴权方式有哪些
谈谈Session/Cookie机制,如何实现会话跟踪
谈谈JWT鉴权原理
谈谈Auth2鉴权原理
浏览器是如何控制缓存的
什么是非持久连接,什么是持久连接?
服务端推送有哪些技术
谈谈Comet(长轮询)的原理
HTTPS的原理是什么?
Keep-Alive: timeout=5, max=100是什么意思?
HTTP1.0,HTTP1.1,HTTP2.0,HTTP3区别(HTTP1.1版本新特性?HTTP2快在哪里?HTTP3变了什么?)
除了Webpack外你还用过哪些构建工具?
Webpack与Grunt、Gulp有什么区别?
Webpack的构建流程是什么
有哪些常见的Loader?他们是解决什么问题的?
有哪些常见的Plugin?他们是解决什么问题的?
Loader 和 Plugin 有什么差别
有没有写过Loader
有没有写过Plugin
compiler与complilation有什么区别?
有哪些代码分离的方法
什么是 Tree Shaking
如何利用Webpack来优化前端性能
如何提高Webpack的构建速度
打包文件大怎么解决
watch、computed、methods区别是什么
v-show与v-if区别是什么
列表遍历时key作用?
Vue有哪些生命周期钩子函数?有什么用?
Vue父子组件生命周期调用顺序
Vue如何实现组件通信
data为什么是函数
Vue2数据响应式原理
Vue3数据响应式和Vue2有什么不同
手写reactive实现track和trigger
nextTick怎么用?原理是什么
diff算法和时间复杂度
Vue中的keep-alive有什么用
Vuex怎么用
VueRouter怎么用
VueRouter中hash和history模式的原理
VueRouter如何做登录跳转
Vuex的原理,有哪些概念
什么是虚拟DOM
setState更新的原理
什么是 React Context
React Class 组件的生命周期
函数组件如何体现生命周期
React Diff 原理
React 项目引入CSS有什么方法
Diff算法时间复杂度
React Fiber是什么
React Hooks 原理与使用
Mobx/Redux/RxJS里涉及的概念
React和Vue比较
有没有自己实现过React
有没有自己实现过Hooks
项目中有没有使用过TypeScript
px、em、rem、vw、百分比的区别
物理像素、逻辑像素、CSS像素、PPI、设备像素比是什么
移动端页面为什么要加<meta name="viewport" content="width=device-width">
图片高清怎么做
如何实现0.5px边框/细边框
移动端如何做适配有哪些方案
聊聊viewport缩放方案
聊聊动态REM方案
聊聊vw适配方案
300ms延时的原因和解决
fastclick是什么原理
前端性能优化经验
如何做首屏渲染优化
白屏优化
长列表优化方案
HTTP2如何提升性能
懒加载、预加载、HTTP2的服务器推送都是什么
做个自我介绍
介绍最难的项目
项目如何做优化
如何做技术选型
单元测试做不做
有什么流程和规范
读过源码吗
有没有造过轮子
平时不写博客吗
你是怎么学前端的
你的职业规划
你有什么要问的
CSS
JavaScript
手写代码
HTTP
打包工具
Vue
React
移动端
性能优化
非技术问题
以上内容的答案绝大多数都分散在课程的主线任务、项目、日常拓展课直播里,都学完你找前端工作肯定没有问题了
前端的入门门槛极低,体现在HTML和CSS上。运行环境就是浏览器,推荐Chrome。你需要的一些前端工具箱,推荐Dreamwear/Sublime/Photoshop/SVN等。HTML和CSS不是编程语言,前者只是结构标签,后者则是样式配置,入门是非常简单的。网上资料也有很多,刚入门查阅资料可以用w3school或者MDN
进阶可以学习下:
HTML主要是学了H5的Canvas。
掌握预处理工具Sass、Less。
前端框架:Bootstrap、Foundation。
第二步:JavaScript
这是至关重要的阶段。
javascript 要学的内容实在很多,如果没有其他编程语言的基础的话,学起来可能要费些力,还是建议先在 w3school上学习。之后建议马上看《javascript语言精粹》,js是一门很混乱的语言,这本书能够帮助你区分哪些是语言的精华,哪些是糟粕,对于语言精华,应该深入学习。糟粕部分能看懂别人写的代码就行,自己就不用尝试了。
在有了基础之后,进一步学习内容包括:
1. 简单框架,荐先学 zepto,简单易用
2. 复杂框架,是指 react、vue、angular 等不直接操作dom的框架。这类框架建议js基础打扎实后再学习。
某公教育U就业新推出了关于web前端的系统课程,可以咨询下,希望对你有所帮助。
前端开发工作已经变的越来越复杂,仅仅是想罗列一份前端开发的学习列表就已经是一件艰巨的工作。曾经只要会编写HTML,、CSS和Javascript就是能够找到一份前端开发工作。而现在,web开发远远不止是简单编码,因为我们的互联网上有了更多的内容,也因为有更多的人、更多设备可以访问互联网, web前端开发技能也就更多了。
学习分为以下几个阶段,具体的学习路线图如图所示。
1、前端页面重构。主要内容为PC端网站布局、HTML5+CSS3基础、WebApp页面布局。学习目标是完成PC端网站布局,WebApp页面布局,还要可以通过HTML5+CSS3的2D、3D等属性实现一些精美的动画效果。
2、JavaScript高级课程、PC端全栈项目开发。主要内容为原生JavaScript、面向对象进阶与ES5/ES6应用、JavaScript工具库自主研发、JQuery经典交互特效开发、HTTP协议、Ajax进阶与后端开发、前端工程化与模块化应用以及AngularJS等。学习目标是可以通过原生JavaScript开发交互功能,实现网站上的交互效果,以及模块化应用等,实现完整的前端工程。
3、Web前端框架、混合开发(Hybrid,RN)、大数据可视化。主要内容为Node.js后端开发、Vue.js前端框架、React前端框架、混合开发(Hybrid,RN)、Angular前端框架、大数据可视化等。学习目标是可以独立完成相应的项目,如微信场景,应用Vue.js/Ionic/React.js等框架开发WebApp,微信小程序项目开发,以及各类混合应用项目开发等。