《程序员如何找到第一份工作之前端篇》
前 言
因工作原因,每年会进行几百次的技术面试,求职人员专业背景,技术深度广度,职业素养等各异,特别是三四线城市IT业,再加上很多其它行业人员经过3-4个月的培训,转行求职的,在面试过程中发现,即将进入工作岗位的开发人员对技术核心点关注不够,任何编程语言,能快速掌握及技术核心点,将有助于快速适应实际工作需要;
本系列教程(文章)适合计算机专业即将毕业并打算从事web方面编程的同学及从其它行业转行并接受过培训机构培训,并处于寻找第一份web程序员工作的学员,特将面试过程中可能被问及的核心技术点整理,以供参考,并非实操性的技术参考;
JQuery AJAX核心关注点
AJAX是一种与服务器进行数据交互的技术,可向服务器请求数据,对网页或者APP等前端界面进行局部更新;同时可以向服务器发送数据,执行业务处理,数据库入库等操作;可使用原始JavaScript操作,当然实际Web开发过程中,推荐使用JQUERY框架;
Ajax请求方式分为:GET及POST,随着编程框架的发展特别是Spring框架,又可支持PUT及DELETE等请求;GET请求时通过在请求地址后面使用&符追加参数方式实现;POST主要是通过request body传递参数,数据可以时form表单形式,亦可以JSON方式传入服务器;为了保证各系统之间数据交互,推荐使用JSON格式;
Ajax在实际请求过程中又分同步请求及异步请求;默认情况下请求均为异步;同步情况下,请求过程中会锁定网页、APP等前端界面,必须等Ajax执行完毕后用户方能进行其它业务操作;
对于想将程序员作为自己第一份工作的小伙伴,面试过程中很可能会问你Ajax的步骤;无论时为了找工作还是为了实际工作,我们都应该对Ajax请求有一定了解;本文特将Ajax五个步骤整理,以供参考,请求步骤仅是原理,其实现上要根据所处项目的技术选型具体处理;
(1)创建XMLHttpRequest对象,也就是创建一个异步调用对象.
(2)创建一个HTTP请求,并指定该HTTP请求的方法、URL及验证信息.
(3)设置响应HTTP请求状态变化的函数.
(4)发送HTTP请求.
(5)获取异步调用返回的数据.
(6)使用JavaScript和DOM实现局部刷新.
JQuery 核心Dom操作
做前端开发,JQuery框架的熟练使用是一项基本技能;依托于框架本身能做出很多让人惊艳的网页特效;但其核心就是通过JQuery对网页各种Dom元素进行操作处理,添加CSS样式,动画等;JQuery面试中,所问问题一般不是很多,但是若有,基本上是会对一些特殊的表单元素取值赋值等进行提问;
主要涉及有:select、radio、checkbox等 元素的取值、赋值、获取选中文本等;
[if !supportLists](1) [endif]selected取值$(“#select”).val(); 获取选中文$(“#selectoption:selected”).text();
[if !supportLists](2) [endif]radio取值:$("input[name='rd']:checked").val();
[if !supportLists](3) [endif]radio设置选中:$("input:radio[value=1']").attr('checked','true');
同时关于JQuery选择器也有可能被问及,JQuery选择器主要分类选择器(根据css类进选择)及ID选择器;即$(“.blue-text”) 于$(“#blueTxt”)两种方式;实在工作中有很多实现方法,根据需要选择即可;
CSS核心关注点
CSS全称层叠样式表,其实质就是网页的美容笔,化妆品;定义浏览器该如何显示HTML元素;面试过程中可能会被问及HTML元素类型;
HTML类型主要分为:块元素和行元素,块元素独占一行,未设置宽度时,将自动撑满其父元素宽度,相邻元素间垂直排列;行元素有时也被称为内联元素,元素不独占一行,无需设置宽度高度等;
CSS还有个特别需要关注的点元素布局及定位,定位分:相对定位、绝对定位及固定定位;对应position属性;
CSS3核心关注
CSS3我们可以理解成CSS的升级版,其加入了更多属性,诸如2D、3D转换,动画等,但在实际应用过程中,除了更为绚丽的网页,其核心还是和HTML5配合实现网页的多屏适配,确保我们开发的网页能在各种屏幕大小,各种屏幕分辨率及各种型号手机等设备上显示良好;
CSS3之所以能进行多屏适配,其核心为其特有的@media查询机制;我们根据不同的媒体类型、不同的屏幕尺寸设置不同样式;
其语法如下:
@mediamediatype and|not|only (media feature){
// html
元素样式
}
实际案例:
@media(min-width:768px) {}
@mediascreenand (min-width:321px) and (max-width:375px){}
总 结
WEB前端技术还有很多本文并未涉及,诸如VUE,浏览器兼容性,浏览器缓存处理等,推荐有时间同学去了解学习,对其核心原理有一定了解;对于想专职从事前端开发的同学来说,与前端开发相关的各环节我们都应该主动去学习深入;无论是为了找工作,还是为了提升自我能力;