学分高考 web前端

Web前端面试的常见面试题汇总

发布时间: 2023-04-12 14:30:06

Web前端面试的常见面试题汇总

[��ǩ:����]

今天小编要跟大家分享的文章是关于参加Web前端面试的常见面试题汇总。准备参加Web前端面试的小伙伴们来和小编一起看一看吧,希望本篇文章能够对大家有所帮助。





1.渐进增强与优雅降级


渐进增强
并不是一种技术,而是一种设计思想。各个浏览器的渲染能力各不相同,要做一个每个人都能看到的网页、感受到的体验都一致的网站几乎不可能。但还是得网站的可访问性,保证用户在任何环境下都能正常访问网页得核心内容或能使用基本功能(避免网页打不开、排版错误等),并为他们提供当前条件下最好的体验,这就是渐进增强得核心思想。


优雅降级也是一种设计思想,为了保证在高版本浏览器中提供最好的体验,碰到低版本浏览器再降级进行兼容处理,使其能正常浏览。


这两种思想的区别在于:


1.渐进增强是向上兼容,优雅降级是向下兼容;


2.渐进增强是从简单到复杂,优雅降级是从复杂到简单;


3.渐进增强关注的是内容(保证核心内容),优雅降级关注的是浏览体验(为了兼容低版本浏览器)


2.DOCTYPE














作用


DTD(documentTypeDefinition,文档类型定义)是一系列的语法规则,用来定义XML或(X)HTML
的文档类型。浏览器会使用它来判断文档类型,决定何种协议来解析,以及切换浏览模式。


DOCTYPE是用来声明文档类型和DTD
规范的,一个主要的用途便是文件的合法性验证。如果文档代码不合法,那么浏览器解析时便会出现一些差错。


HTML5的文档类型声明:





HTML4.01Strict(HTML4.01严格模式)的DTD包含所有HTML
元素和属性,但不包括展示性的和弃用的元素(如font),它的文档类型声明:


-//W3C//DTDXHTML1.0Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">


标准模式与怪异模式


怪异模式(Quirks
Mode)用于模拟旧浏览器的行为。早期的网站并不会遵循完整的规范,随着浏览器支持越来越多的规范,在那些旧的浏览器中开发的页面在显示时会被破坏。为了向后兼容,浏览器发明了怪异模式,一行错误或无效的
DOCTYPE都会触发怪异模式。


浏览器使用文件开头的DOCTYPE来决定用怪异模式处理或标准模式处理。DOCTYPE
可以确保不同浏览器以相同的方式解析文档,以及执行相同的渲染模式。


怪异模式与标准模式的主要区别:


1.怪异模式的宽度和高度会包含padding和border。标准模式不包含,标准模式下可以通过设置box-sizing:
border-box将标准盒模型转化成怪异模式下的盒模型。


2.怪异模式下,当内容超出容器高度时,会将容器拉伸,而不是溢出。


3.怪异模式下,在表格中的字体样式(如font-size)不会继承。


4.怪异模式下颜色值必须使用十六进制标记法。


3.语义化


HTML5
中的语义化就是让元素、属性或属性值有含义,更准确地标记特定类型的内容。对元素语义化的目的是为了让元素的语义和呈现分离,元素只负责文档内容的结构与含义,而CSS
样式控制内容的呈现,像元素,没有语义但却能将字体变粗,这类元素违背了语义化的目的,将会被废弃。


优点


·使得HTML文档结构清晰、布局合理、主体突出、可读性更强。


·有利于SEO,搜索引擎根据标签来确定上下文和各个关键字的权重。


·方便其他设备解析,如盲人阅读器根据语义渲染网页。


·有利于开发和维护,语义化更具可读性,代码更好维护,与CSS3关系更和谐。


语义化标签


·定义文档的页眉区域,应作为介绍内容或者导航链接栏的容器;


·footer内容的页脚,通常包含该章节作者、版权数据或者与文档相关的链接等信息;


·article
文档、页面、应用或网站中的独立结构,是可独立分配的、可复用的结构,如在发布中,它可能是论坛帖子、杂志或新闻文章、博客、用户提交的评论、交互式组件,或者其他独立的内容项目;


·nav描述一个含有多个超链接的区域,该区域包含跳转到其他页面或页面内部其他部分的链接列表;


·section表示文档中的一个区域(或节),比如,内容中的一个专题组;


·main定义文档的主要内容,该内容在文档中应当是独一无二的,不包含任何在文档中重复的内容,比如侧边栏,导航栏链接,版权信息,网站
logo,搜索框(搜索框作为文档的主要内容);


·aside
表示一个和其余页面内容几乎无关的部分,被认为是独立于该内容的一部分且可以被单独的拆分出来而不会影响整体。通常表现为侧边栏或嵌入内容。


4.超链接伪类


:link、:visited、:active和:hover的声明顺序是怎样的?


:link表示未访问的链接状态;


:visited表示已访问状态;:active表示激活状态(鼠标按下);:hover表示悬停状态。


推荐顺序是LVHA,即:link:visited:hover:active。理由如下:


·当鼠标悬停在未访问的链接上时,:link和:hover都会命中,如果:hover在:link
之前声明,那么(:hover)就会被覆盖;


·当鼠标悬停在已访问的连接上时,:visited和:hover都会命中,如果:hover在:visited
之前声明,那么(:hover)就会被覆盖;


·当鼠标单击链接时,:active和:hover都会命中,我们大多是想让:hover只在悬停时展示样式,按下鼠标时使用:active
样式,因此:active在:hover之后声明;


·综上,:hover应在:link和:visited之后,在:active之前,因此active在最后。而:link和
:visited两者的顺序无所谓,互不影响。


5.CSS常见的长度单位


CSS中除了px长度单位之外,还有下面几个长度单位:


·pc六分之一英寸,1pc=12pt=1/6*1in=16px;


·pt一磅,72分之一英寸。1pt=1/12_1pc=1/72_1in≈1.33px;


·in一英寸,1in=2.54cm=96px;


·ex在含有“X”字母的字体中,它是该字体的小写字母的高度。对于很多字体来说,1ex≈0.5em;


·em1em等于父级元素的字体大小,2em就是父级元素字体大小的二倍;


·rem当用在根元素()的font-size上面时,它代表了它的初始值;


·ch代表元素所用字体font中“0”这一字形的宽度;


·vh1vh相当于视口高度的1%,100vh就是视口的高度;


·vw1vw相当于视口宽度的1%,100vw就是视口的宽度;


·vmax视口高度vw和宽度vh两者中的最小值


·vmin视口高度vw和宽度vh两种中的最大值;


·%相对于父级元素的大小来确定;


参考:CSS[1]


CSSpercentage[2]


6.事件对象


冒泡与捕获


事件冒泡与捕获是事件处理的两种机制,主要描述当在一个元素上有两个相同类型的事件处理器被激活会发生什么。


在点击子元素时,浏览器运行了两种不同的阶段:捕获阶段和冒泡阶段。捕获阶段的行为:


·浏览器检查元素的最外层祖先,是否在捕获阶段中注册了一个onclick事件处理程序,如果是,则运行它;


·
然后,它移动到中单击元素的下一个祖先元素,并执行相同的操作,然后是单击元素再下一个祖先元素,依此类推,直到到达实际点击的元素;


而冒泡与捕获恰恰相反:


·浏览器检查实际点击的元素是否在冒泡阶段中注册了一个onclick事件处理程序,如果是,则运行它;


·然后它移动到下一个直接的祖先元素,并做同样的事情,然后是下一个,等等,直到它到达元素;


而现代浏览器在默认情况下,所有事件处理程序都在冒泡阶段进行注册。因此上面代码在点击子元素时会先执行子元素绑定的事件,然后向上冒泡,触发父元素绑定的事件。


addEventListener函数的第三个参数是个布尔值。含义:


·当布尔值是false时(这也是默认值),表示向上冒泡触发事件;


·当布尔值是true时,表示向下捕获触发事件;


不能冒泡的事件


有些事件是不会冒泡的。比如:


·blur元素失去焦点时触发,focusout事件也是失去焦点时触发,但可以冒泡;


·focus元素获取焦点时触发;


·mouseenter鼠标移动到元素上时会触发该事件,与之对应的是mouseover事件,但会冒泡;


·mouseleave鼠标离开元素时触发,与之对应的是mouseout,但会冒泡;


事件冒泡可以让我们利用事件委托,尤其是处理大量子元素时,如果给每个子元素都绑定事件,这是不优雅的,可以将事件绑定到父元素上,并让子节点上发生的事件冒泡到父节点上,利用
e.target属性可以获取到当前触发事件的子元素。


事件对象中的方法


·stopPropagation()阻止事件冒泡,当设置后,点击该元素时父元素绑定的事件就不会再触发;


·preventDefault()阻止默认事件的发生;


·stopImmediatePropagation()它用来阻止监听同一事件的其他事件监听器被调用以及阻止事件冒泡,比如给同一个div
元素绑定多个click事件(使用addEventListener方法可以注册多个),当在第二个事件函数中调用
stopImmediatePropagation方法时,点击div元素时,后面注册的click将不会被触发,而且还会阻止事件冒泡;


比如下面的例子,给p绑定多个click事件,在第二个事件函数中调用stopImmediatePropagation,第三个click
事件就不会触发,因为也阻止了冒泡,因此父元素的click事件也不会触发。





paragraph










document.querySelector("div").addEventListener("click",(event)=>{


alert("我是div元素,我是p元素的上层元素");


//p元素的click事件没有向上冒泡,该函数不会被执行


},false);


constp=document.querySelector('p')


p.addEventListener("click",(event)=>{


alert("我是p元素上被绑定的第一个监听函数");


},false);


p.addEventListener("click",(event)=>{


alert("我是p元素上被绑定的第二个监听函数");


event.stopImmediatePropagation();


//执行stopImmediatePropagation方法,阻止click事件冒泡,并且阻止p元素上绑定的其他click
事件的事件监听函数的执行.


},false);


p.addEventListener("click",(event)=>{


alert("我是p元素上被绑定的第三个监听函数");


//该监听函数排在上个函数后面,该函数不会被执行


},false);








在IE浏览器中,使用e.cancelBubble=true也可以取消事件冒泡;使用e.returnValue=false
也能阻止默认事件的发生。


target与currentTarget


target属性指向的是事件目标,而currentTarget属性指向的是正在处理当前事件的对象,它总是指向事件绑定的元素。而target
指向的可能不是定义时的事件目标。


例如:


div.addEventListener('click',(e)=>{


console.log(e.target,e.currentTarget);


},false);


e.target可能指向div元素,也可能指向它的子元素。而e.currentTarget总是指向div元素。


以上就是小编今天为大家分享的关于参加Web前端面试的常见面试题汇总的文章,希望本篇文章能够对正准备参加前端面试的小伙伴们有所帮助,想要了解更多Web前端知识记得关注北大青鸟Web前端培训官网,最后祝愿小伙伴们工作顺利,成为一名优秀的Web前端工程师。


参考资料


[1]


CSSlength:#/zh-CN/docs/Web/CSS/length


[2]


CSSpercentage:
#/zh-CN/docs/Web/CSS/percentage

2020年Web前端面试题汇总(一)

今天小编要跟大家分享的文章是关于2020年Web前端面试题汇总。由于内容较多小编分开为大家介绍,今天首先来和小编一起看一看第一部分的内容,希望这些面试题能够对正准备找Web前端相关工作的小伙伴们有所帮助。





1.说几条写Javascript的基本规范?


1)不要在同一行声明多个变量;


2)请使用===/!==来比较true/false或者数值;


3)使用对象字面量替代newObject这种形式;


4)减少使用全局函数,全局变量;


5)switch语句必须带有default分支;


6)if语句必须使用大括号;


7)for-in循环中的变量;


应该使用var关键字明确限定作用域;


从而避免作用域全局污染。


2.说说平衡二叉树?


平衡二叉搜索树(Self-balancingbinarysearchtree)


又被称为AVL树。


具有以下性质:


1)它是一棵空树或它的左右两个子树


的高度差的绝对值不超过1,


并且左右两个子树都是一棵平衡二叉树。


2)平衡二叉树必定是二叉搜索树,反之则不一定。


3)平衡二叉树的常用实现方法有红黑树、AVL、


替罪羊树、Treap、伸展树等。


最小二叉平衡树的节点的公式如下:


F(n)=F(n-1)+F(n-2)+1备注:1是根节点,


F(n-1)是左子树的节点数量,


F(n-2)是右子树的节点数量。


3.清除浮动和解决垂直外边距重叠的解决方案?


问题描述:


1)父元素没有设置宽高,尺寸由子元素撑起;


子元素一旦浮动,父元素高度会发生塌陷。


2)子元素设置margin-top会作用的父元素的margin-top;


此时会造成垂直外边距重叠。


.clearfix::after,.clearfix::before{


content:'';


display:table;


clear:both;


}


4.sessionStorage、localStorage和cookie?


相同点:


都用于浏览器端存储的缓存数据;


不同点:


1)存储内容是否发送到服务器端


当设置了cookie后,数据会发送到服务器端,


造成一定的宽带浪费;xxxstorage则会将数据保存


到本地,不会造成宽带浪费;


2)数据存储大小不同


cookie数据不能超过4K,适用于会话标识;


xxxstorage数据存储可以达到5M;


3)数据存储的有效期限不同


cookie只在设置了Cookid过期时间


之前一直有效,即使关闭窗口或者浏览器;


sessionStorage,仅在关闭浏览器之前有效;


localStorage,数据存储永久有效;


4)作用域不同


cookie和localStorage是在同源同窗口中


都是共享的;


sessionStorage不在不同的浏览器窗口


中共享,即使是同一个页面;


5.判断一个单词是否是回文?


回文是指把相同的词汇或句子,


在下文中调换位置或颠倒过来,


产生首尾回环的情景,


叫做回文,也叫回环。


比如cacac,redivider。


letcheckPalindrom=(str)=>{


returnstr===


str.split('').reverse().join('');


}


6.不借助临时变量,进行两个整数的交换?


输入a=3,b=1,


输出a=1,b=3


letswap=(a,b)=>{


b=b-a;


a=a+b;


b=a-b;


return[a,b];


}


7.请写出至少5个html5新增的标签,并说明其语义和应用场景?


section:定义文档中的一个章节;


nav:定义只包含导航链接的章节;


header:定义页面或章节的头部;


它经常包含logo、页面标题和导航性的目录。


footer:定义页面或章节的尾部;


它经常包含版权信息、法律信息链接和反馈建议用的地址。


aside:定义和页面内容关联度较低的内容,


如果被删除,剩下的内容仍然很合理。


8.get和post请求在缓存方面的区别?


get请求类似于查找的过程,用户获取数据,


可以不用每次都与数据库连接,所以可以使用缓存。


post不同,post做的一般是修改和删除的工作,


所以必须与数据库交互,所以不能使用缓存。


因此get请求适合于请求缓存。


9.如何解决异步回调地狱?


promise、generator、async/await


10.图片的懒加载和预加载?


预加载:提前加载图片,


当用户需要查看时可直接


从本地缓存中渲染。


懒加载:懒加载的主要目的


是作为服务器前端的优化,


减少请求数或延迟请求数。


两种技术的本质:


两者的行为是相反的,


一个是提前加载,


一个是迟缓甚至不加载。


懒加载对服务器前端有一定


的缓解压力作用,


预加载则会增加服务器前端压力。


11.bind,apply,call的区别?


通过apply和call改变函数的this指向,


这两个函数的第一个参数都是一样的,


表示要改变指向的那个对象,


第二个参数,apply是数组,


而call则是arg1,arg2...这种形式。


通过bind改变this作用域


会返回一个新的函数,


这个函数不会马上执行。


12.js怎么控制一次加载一张图片,加载完后再加载下一张?


方法一:





varobj=newImage();


obj.src="#/21.jpg";


obj.onload=function(){


document.getElementById("pic")


.innnerHTML="";


}


加载中


方法二:





varobj=newImage();


obj.src="#/21.jpg";


obj.onreadystatechange=function(){


if(this.readyState=="complete"){


document.getElementById("pic")


.innnerHTML="";


}


}





加载中


以上就是小编今天为大家分享的关于2020年Web前端面试题汇总的文章,希望本篇文章能够对想要参加web前端面试的小伙伴们有所帮助,想要了解更多Web前端相关知识记得关注北大青鸟Web培训官网。最后祝愿小伙伴们面试成功,成为一名优秀的Web前端工程师。

面试Web前端需要注意什么?会面试哪些问题?

作为一名HTML5前端工程师,为了工作,为了就业我们免不了要参加各种各样的面试。为此总结了面试前的注意事项:

第一:注意自己的仪容仪表

面试之前,一定要再次从头到脚地将自己的仪容仪表检查一遍。检查时主要包括,自己的牙缝是不是还有食物残渣,所以你需要就近找一个卫生间,如果没有卫生间就近找一个角落也是可以的,但是切记一定不要在大庭广众之下。因此,为了给自己整理出着装的时间请在约定时间前20分钟到达。

第二:再次检查面试时所需的资料是否都已带全

这些资料主要包括:身份证明、学历文凭证明、个人简历、以往作品等等,如果这些东西齐全之后,需要对这些资料做一个整理与排序。因为没有哪个面试官希望看到面试者拿出一堆“莫名其妙”的东西塞给他,让他自己再一页一页的翻找自己需要的内容,如果说这些资料在面试官手中不小心散落一地,结果可想而知。这样的求职者在面试官眼中也一定不是一个让人放心、有条不紊的员工。当然如果检查时发现资料没有带全,也不要紧张。反而你要庆幸幸亏及时检查,也有足够的时间组织语言去向面试官解释。

第三:面试之前将通信工具调成振动或关闭状态

虽然说面试者与面试官之间是一个平等的关系,但毕竟你是去人家公司求职的,始终处于一个被动的状态,所以最起码的尊重还是要做到的。曾经有调查显示,对于面试过程中接电话或是被电话打断的求职者,会被HR减分。

第四:等候面试官时,仔细观察多了解面试公司

在等候面试官时,可以暗自观察一下公司的大体情况比如员工的着装风格、公司的LOGO或是贴在墙上的企业文化、公司的环境等等,一来可以在接下来的面试过程中表现出自己对公司的认同感,二来也可以让自己对求职公司多些了解,以确定是否要接受这里的工作。如果你身边有公司的资料宣传架,不妨取一本翻看一下,也会增加HR对你的好感。

第五:放松心情,保持自信

面试时一定要保持一定的自信,这样也会给面试官留下很好的印象。面试只是你步入工作的第一步,即便是失败了那也是人生重要的经历。失败是为了更好的迎接下一个挑战。

作为一名web前端工程师千万不要觉得懂技术面试就能万事大吉了,像以上五点细节性的东西也是一定要掌握的。

面试题系列:

网页链接

打算作web前端工程师,全国计算机技术与软件专业资格考试有用吗

Web前端学习顺序就是HTML ->DIV_CSS -> javascript ,如果你没有学过其它编程语言,javascript自学就比较难了。HTML ,DIV_CSS都是死记标签的
学习web前端,需要掌握这些知识点
1、前端入门:页面布局与重构、HTML、CSS
2、web交互开发:Javascript、jQuery、Ajax
3、移动前端开发:响应式布局、HTML5、CSS3
4、前端高级开发:原生移动开发、微信开发

去哪儿网web前端开发工程师面试题目

去哪儿网的面试题目主要还是偏向JS方面,对JS的基础要求比较高,侧重原理方面,比如闭包原理、作用域原理、面向对象继承原理等。

建议你去看看【决胜前端】最合适不过了,里面有几百道前端面试真题,而且每道题都有详细的剖析。

hr如何面试web前端工程师,该问哪些技术问题

近来几个月,一直在努力寻找前端战友,未果,一路的招聘经历下来,心生不少感慨, 一直都很小心翼翼的,怕错失了高人,又更加怕失误把关不够招到不合格的同学进来公司,对公司对项目造成某些影响。
面试前端工程师对我来说是一件非常有意思的事,因为面试过程很大程度上也是自我提升的过程。无论大公司还是小公司,之所以在如何招聘到真正有能力的 前端工程师方面会遇到同样的问题,就是因为负责招聘的那些人不知道自己公司需要什么样的人,结果问问题时也问不到点子上。经过这几年在行业里的摸索,我总 结出了自己的一套很有效的面试前端工程的方法。
有的应聘者说我不好对付,但留给他们这样的印象也并非我所愿。我觉得之所以他们说我不好对付,主要是因为我问他们问题时问得太细了。以前我曾专门写过一些 东西,告诉应聘者怎么才能通过我的面试(Surviving an interview with me)以及优秀的前面工程师应该具备什么样的素质(What makes a good front end engineer?),而我的面试可以说完全是按照那两篇文章的标准进行的。我不会问一些特别偏门的问题,也不认为出几道逻辑题就能考出人的真实水平。我 唯一的想法就是确定你能否胜任我们要招的这个职位。为此,我需要简单地考察如下几个方面。
基本知识
我们生活在互联网时代,你想知道的任何事情几乎都能在15分钟内找到相关信息。可是,能找到信息并不等于你会使用它。我认为所有前端工程师至少都应 该掌握某些基本的知识,才能有效地完成自己的工作。如果一遇到问题,就停下工作上网四处搜索解决方案,怎么可能保证按期完成工作呢?听听,还有谁在说“我 不知道,但我可以上网搜到。”请这些同学把手举起来,让大家认识一下(immediately raises a flag for me.)。下面我列出一些基本的知识点,这些都是我认为一名前端工程师(无论工作年头长短)在没有任何外来帮助的情况应该知道的。
DOM结构——两个节点之间可能存在哪些关系以及如何在节点之间任意移动。
DOM操作——怎样添加、移除、移动、复制、创建和查找节点。
事件——怎样使用事件以及IE和DOM事件模型之间存在哪些主要差别。
XMLHttpRequest——这是什么、怎样完整地执行一次GET请求、怎样检测错误。
严格模式与混杂模式——如何触发这两种模式,区分它们有何意义。
盒模型——外边距、内边距和边框之间的关系,IE 8以下版本的浏览器中的盒模型有什么不同。
块级元素与行内元素——怎么用CSS控制它们、它们怎样影响周围的元素以及你觉得应该如何定义它们的样式。
浮动元素——怎么使用它们、它们有什么问题以及怎么解决这些问题。
HTML与XHTML——二者有什么区别,你觉得应该使用哪一个并说出理由。
JSON——它是什么、为什么应该使用它、到底该怎么使用它,说出实现细节来。
重申一下,上述这些知识点都应该是你应该“想都不用想”的东西。我一开始问的所有问题都是想摸清你对所有这些领域知识的掌握程度。虽然上面列出的这些知识点并没有面面俱到,但我觉得你至少应该掌握这些,才有可能跟我坐到一间办公室里来。
少量提问
我非常赞同面试者问的问题越少越好。反复问应聘者各种问题既不公平,也很无聊。我在任何一次面试中,通常只问三个大问题,但每个问题又会涉及我所能想到的多个方面。回答每个大问题一般要经过几个步骤,这样我就可以在每个步骤中穿插着问一些小问题。比如说:
现在有一个正显示着Yahoo!股票价格的页面。页面上有一个按钮,你可以单击它来刷新价格,但不会重新加载页面。请你描述一下实现这个功能的过程,假设服务器会负责准备好正确的股票价格数据。
这个问题牵扯到一组我想要考察的基本知识点:DOM结构、DOM操作、事件处理、XHR和JSON。如果我要求你对换一种处理股票价格的方式,或者 让你在页面中显示其他信息,就可以把更多的知识点包括进来。对于经验比较丰富应聘者,我也可以自如地扩展要考察的知识范围,最简单像JOSN与XML的区 别、安全问题、容量问题,等等。
我还希望应聘者给出的任何解决方案中都不要使用库。我想看到最原生态的代码,你就当页面中没有包含任何库。你说你对哪个库了解多少多少,但我不能把 关于库的知识作为评判能力的因素,因为库是会随时间变化的。我需要的是真正理解库背后的机制,特别是能够徒手写出一个自己的库的人。
解决问题
做为一名前端工程师,最值得高兴的事莫过于解决同一个问题会有很多种不同的方法,而你要做的就是找出最合适的方法来。我在提问的时候,经常会在应聘 者解释完一种方法后问他们还有没有第二种方法。此时我会跟他们说,假设你的这个方法由于种种原因被否决了,那么你还能不能给出另一种方法。这样做可以达到 两个目的。
首先,可以测试出他们是否在毫无意义地复述书本中的东西。不能不承认,某些人确实有过目不忘的天赋,听他们在那里滔滔不绝地讲,你会觉得他们什么都 明白。可是,只要一跟这些人谈到怎么查找方案无效的原因,以及能否拿出一个新方案来,他们往往就傻眼了。这时候,如果我听到“我不明白这个方案为什么不够 好”之类的反问,心里立刻就明白我的问题已经超出了他们的能力范围,而他们只是想拿自己死记硬背的结论来蒙混过关。
其次,可以测试出他们已经掌握的(还是那句话,“想都不用想”)浏览器技术知识。如果他们对浏览器平台的核心知识有较好的理解,想出解决同一问题的不同方案根本没有那么难。
对一名前端工程师来说,这绝对是最重要的能力。前端工程师在工作中遇到本该如此却并未如此的难题(说你啦,IE6),应该说是一件很平常的事。一个方案无效就无计可施的人,做不了前端工程师。
考核应聘者解决问题能力的另一层原因,与我的个人喜好有关。在搞清楚应聘者知道什么不知道什么之后,我就会想着问一个他们知识领域之外的问题。这样 做的目的,就是想看看他们怎样运用已有的知识解决新问题。在解决问题的每一步,我也准备了一些提示,以防有人会卡壳打艮(在我面前15分钟一言不发,对我 评价这个人毫无帮助)。我真正感兴趣的,是他们能够从上一步前进到下一步。我希望看到一个人就在我眼前学到新知识。
注意:所有问题都与浏览器技术相关。我不相信出几道抽象的逻辑题,就能够考出某人解决Web技术问题的能力。在我看来,这无异于让素描大师画肖像(或者让刘翔跟博尔特同场竞技),没有意义,也得不到任何有价值的信息。
有激情
要成为一名优秀的前端工程师,最重要的莫过于对自己做的事要有激情。我们技能都不是从学校中或者从研讨会上学来的,因此前端工程师必须具备自学能 力。浏览器技术的变化可谓日新月异,所以也只有不断提升自己的技能才做得到与时俱进。我虽然不能强迫谁必须多看博客、不断学习,但想应聘前端工程师的人恐 怕还是必须这么做的。
你怎么知道谁对这种工作有没有激情?实际上非常简单。我只问一个简单的问题:“目前你对什么Web技术最感兴趣?”这个问题永远不会过期,而且也几 乎不可能出错……除非你答不上来。就眼下来说,我希望你对这个问题给出的技术中包括WebSocket、HTML、WebGL、客户端数据库,等等。只有 对Web开发充满激情的人,才会坚持不懈地学习新知识、掌握新技能;这些人才是我真正想要的。当然,我会让他们详细解释自己提到的技术,以保证他们不是随 口说了几个时髦的新词汇。
最后一点
计算机科学或者Web设计方面的知识当然也有用,但那都是基本知识之外的东西。只要基本知识在那儿了,一切就都有了基础,想扩充知识面也不难。可 是,如果等到正式上班以后,还得从头学习基本技能,那种难度是不可同日而语的。另外,高级前端工程师与一般工程师相比,肯定需要掌握更多的技能。而面试几 乎没有经验大学毕业生,同样也会有一套完全不同的程序。我在这篇文章里列出来的都是一些最基本的东西。
对于那些还没有多少面试经验的人,我总是喜欢告诉他们,面试完了只要问自己一个问题就行:你想以后跟这个人在一起共事吗?如果不管为什么,回答是不,那就是不。

做HTML5前端工程师需要考什么证吗?

目前来说,二线城市及以下,web前端工程师是不需要持证上岗的。

但是需要你懂以下的知识:

1、精通HTML/XHTMLCSS,熟悉页面架构和布局,对Web标准和标签语义化有深入了解

2、精通Ajax、Javascript、DOM等前端技术,掌握面向对象编程思想。

3、熟悉一种以上后台开发语言(如Java/PHP或C++/C/.NET)以及一种数据库(MySQL/Oracle/DB2)

5、精通Flash,Photoshop,Dreamweaver,fireworks,等网站美工设计软件,具备一定的平面设计能力

5、对用户体验、交互操作流程、用户需求有深入理解

如果是毕业大学生的话,计算机等级证是有一些帮助的。

面试时最好带一份自己设计的web前端项目,简单来说就是自己做一个网页,清楚的能够讲解你做的项目的特点,和一些运用到的知识点,如果是大企业的话,会有一些面试题,这个就需要你去网上做大量的题库。其他基本靠口才和过硬的专业知识。

对于之后,有4种选择:

1、技术专家。

就搞前端,但前端的分支很多,你要抓住潮流。例如web可视化?WEB VR?前端动画特效?

这时的你,就不能执着于技术比别人好。那没用,因为比别人好,意味着你能做的别人也能做。所以得搞点别人整不了的。

可能许多人会觉得这样很累。但我告诉你们,负责的讲,这个方向是最轻松的。因为有过去的技术积累,新东西你看看就会了。

2、转行为产品经理。

就是搞搞产品原型,梳理下业务流程,成天开产品讨论会,写产品说明word文档。这个我不太懂,就不多说了。但总之这是一个方向。

有技术背景的人,搞产品会多那么一点点优势。

3、做项目经理。

脱离开发一会,着力管控项目进度,甲乙双方的沟通什么的,搞什么招投标,什么售前、售后之类的。这个我也不太懂,也不多说了。但这也是一个方向。

4、自己创业。

创业嘛,一看机缘,二看运气。不多说了。

扩展资料

web前端工程师职责

1、Web前端开发工程师,除了主要职责外,还要为网站上提供的产品和服务实现一流的Web界面,优化代码并保持良好兼容性

2、Web前端表现层及与前后端交互的架构设计和开发

3、配合后台开发人员实现产品界面和功能

4、利用各种Web技术模拟开发产品原型

5、Web新技术调研和资讯整理

web前端基础技术

1、对常用的一些JS框架了解,如jQuery、YUI等。

2、掌握最基本的Javascript计算方法编写。

3、对目前互联网流行的网页制作方法(Web2.0)HTML+CSS,以及各大浏览器兼容性有很大的了解。

4、对前沿技术(HTML5+CSS3)的基本掌握。

5、还要对IT其他编程语言有所了解如:PHP,Java,.net!有一些公司还要求懂一点SEO优化!

参考资料:百度百科:web前端工程师

一道web前端工程师面试题,求解答。

这样的布局用绝对定位实现最合适,ABC的外层用相对定位,里边各列用绝对定位就可以。至于CBA且B宽度自适应,还是用绝对定位,但只定位C,A分部到两侧,中间的列margin设成左右列的宽度就可以。

转行做Web前端工程师要学习的入门知识汇总

今天小编要跟大家分享的文章是关于转行做Web前端工程师要学习的入门知识汇总。想要学习Web前端知识的小伙伴们来和小编一起看一看吧,希望本篇文章能够对大家有所帮助。





一、前端工程师的主要职责:


前端工程师在不同的公司有不同的功能,但性质相似。


1、网站设计与网页界面开发


2、做网站界面开发


3、Web界面开发,前端数据绑定,前台逻辑


4、设计、开发、数据


二、Web前端开发中需要掌握的技术:


1、学习HTML,这是最简单,最基本的是要掌握div,formtable、Ulli、P、跨度、字体这些标签,这些都是最前端的学习都是需要不断的学习,学一天停一停相当于白学。


2、学习CSS,CSS这里说的不包括CSS3Web前端开发里面我们看到的,一个可以使用HTML或CSS+
CSS+DIV的界面布局,所以CSS是用来协助HTML布局和显示,我们称之为“CSS样式”,为什么说DIV+CSS?因为我说div是HTML主要用于布局的,所以div是这个东西的核心!CSS必须配合。CSS必须掌握浮、位置、宽度和高度,以及最大值和最小值,以100%,溢出,边缘、填充等。这些都是与布局相关的样式。


3、JS。你觉得还过的去,看看JS是可怕的,事实上,JS入门很简单,不需要很多东西,只要根据ID或名称DOM或”风格,或价值,然后以一个ID或名称元标签,或额外的数据,在HTML,这是对数据的操作有关系,那么数据逻辑的影响,无非是一个跳跃,弹框,隐藏什么,这一切都是结合其他应用,代码一点都不难,将这些基本的JS。百度其他好。然后多看一些,不是什么问题。


4、学习jQuery,相当于封装一组JS插件的JS。其目的是操作更方便,编写更少的代码,jQuery条目也非常简单。这些都是切入点,要学会像JS,只是改变了JQ代码。剩下的就跟百度一样。


5、最好是指出背景语言,如java,php,为什么?因为我们是前台接口数据,从后台到点,如果后台代码,你知道如何与后台数据交互是最好的,它节省了时间,也可以使前端代码更加规范。否则,可能是因为你回来了,无法忍受的数据,然后前端代码再次重写,这将是可怕的。


6、研究CSS3+HTML5


以上6点,基本上是一个Web前端开发工程师掌握的技术,我也试着讲述一下自己的经验,但是我们不认为上面的6点只是我说的那么简单,没有,他们正在使用,这是在这样的一个火中,因为坚强!我说的就是这么简单,你觉得原因很难祛除,万事开头难,我说的是方法和技巧的入门,需要了解的东西。除了告诉你一个秘密,不要以为代码很难敲,现在什么语言都有自动提示代码功能,只需要输入一个字符,两个字符,后面的代码就会弹出,让你选择!你害怕什么?所以不要害怕你糟糕的英语。


三、Web前端开发中需要用到的工具:


有一个ediplus,这是这是一个字体颜色的记事本等,我用这个,因为我觉得DW占用太多的内存,使电脑卡,所以我用写ediplus代码,代码有没有自动提示,我不知道,你可以百度是否有插件。Eclipse可以写java,php和上面的各种代码!zendstudio是专写PHP,但上述2个工具是比较专业的,这是由我们的专业开发人员使用,所以你可以看到,PS图像处理软件是没有必要的。


四、Web前端开发展望:


Web前端开发的前景是非常好的。我们不在乎我们做什么网站或者我们在做什么项目。现在我们都在关注用户体验。人们说,如果你的网站界面看起来不错,你的网站和项目将成功3/4。所以现在很多人说Web前端的开发前景略好于后端开发。但我做一个比较,前端开发技术的学习上,后端开发技术开发技术还了解到,前、后端开发薪酬肯定是远远高于前面,但后面的开发技术在一定程度上会有一个很大的瓶颈,因此早期的中级程序员,前端开发后端开发更好,那么高级程序员。


以上就是小编今天为大家分享的关于转行做Web前端工程师要学习的入门知识汇总的文章,希望本篇文章能够对正在从事Web前端工作的小伙伴们有所帮助,想要了解更多Web前端知识记得关注北大青鸟Web培训官网。最后祝愿小伙伴们工作顺利,成为一名优秀的Web前端工程师。

好了,以上就是Web前端面试的常见面试题汇总的含义和出处,希望小编精心整理的这篇内容能够解决你的困惑。访问学分高考了解更多相关话题

温馨提示:
本文【Web前端面试的常见面试题汇总】由作者教培参考提供。该文观点仅代表作者本人,学分高考系信息发布平台,仅提供信息存储空间服务,若存在侵权问题,请及时联系管理员或作者进行删除。
我们采用的作品包括内容和图片部分来源于网络用户投稿,我们不确定投稿用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的权利,请联系我站将及时删除。
内容侵权、违法和不良信息举报
Copyright @ 2024 学分高考 All Rights Reserved 版权所有. 湘ICP备17021685号