首页 > 编程知识 正文

web前端面试题及答案(教资面试把题目讲难了怎么办)

时间:2023-05-03 15:56:05 阅读:5230 作者:2545

从以下五个方面,可以轻松面对前端面试:

一、基础知识

DOM ——:两个节点之间可能存在哪些关系,如何在节点之间自由移动?

操作DOM ——如何添加、移除、移动、复制、创建和查找节点。

事件——如何使用事件,IE和DOM事件模型的主要区别是什么?

XMLHttpRequest——这是什么,如何完全执行GET请求,如何检测错误?

严格模式和混杂模式——是如何触发这两种模式的,区分它们的意义是什么?

框——的外边距、内边距、边框之间的关系,以及IE8以下浏览器中框型号的区别。

level元素和inline元素——如何用CSS控制它们,如何影响周围的元素,你认为应该如何定义它们的样式?

浮动元素——如何使用它们,它们有什么问题,如何解决。

HTML和XHTML——有什么区别?你认为应该用哪一个,为什么?

JSON——什么是,为什么要用,怎么用,讲实现细节。

二、少量问题

现在有一个展示雅虎!股票价格页面。页面上有一个按钮可以点击刷新价格,但是页面不会重新加载。请描述一下实现这个功能的过程,假设服务器将负责准备正确的股价数据。

这个问题涉及到一组我想考察的基础知识点:DOM结构、DOM操作、事件处理、XHR和JSON。如果我要求你改变处理股价的方式,或者让你在页面上显示其他信息,可以包含更多的知识点。对于有经验的考生,我也可以自由扩展要考察的知识范围,比如JOSN和XML的区别,安全问题,容量问题等等。

我也希望该库不会用于候选人给出的任何解决方案中。我想看原始代码,就假装页面不包含任何库。你说你喜欢哪个图书馆就知道多少,但我不能把关于图书馆的知识作为判断能力的因素,因为图书馆会随着时间而变化。

第三,解决问题

作为一个前端工程师,最开心的事情就是解决同一个问题有很多不同的方法,而你要做的就是找到最适合自己的方法。我提问的时候,经常会在讲解完一种方法之后,问考生有没有第二种方法。这个时候我会告诉他们,如果你的方法因为各种原因被拒绝了,能不能再给一个方法?这样可以达到两个目的。

首先可以测试他们是不是在毫无意义的复述书中的东西。我不能承认有些人确实有过目不忘的天赋。听他们在那里说话,你会觉得他们什么都懂。但是,我们一跟这些人谈如何找出方案无效的原因,能否想出新的方案,他们往往会傻眼。这时,如果听到“我不明白为什么这个方案不够好”这样的反问句,我立刻知道我的问题超出了他们的能力范围,他们只是想用自己死记硬背的结论蒙混过关。

其次,他们可以测试自己掌握的浏览器技术知识(再次,“想都别想”)。如果他们对浏览器平台的核心知识有很好的理解,那么对同一个问题想出不同的解决方案就没有那么难了。

注意:所有问题都与浏览器技术有关。我不相信几个抽象的逻辑问题就能检验一个人解决Web技术问题的能力。在我看来,这无异于请素描大师画肖像,毫无意义,得不到任何有价值的信息。

第四,要有激情

要成为一名优秀的前端工程师,最重要的是对自己所做的事情充满热情。我们的技能不是从学校或者研讨会学来的,所以前端工程师一定要有自学的能力。浏览器技术日新月异,只有不断提升技能才能与时俱进。虽然我不能强迫任何人多读博客,不断学习,但想申请前端工程师的人恐怕还是得去申请。

你怎么知道谁对这种工作有热情?其实很简单。我只问一个简单的问题:“目前你最感兴趣的Web技术是什么?”这个问题永远不会过期,几乎不可能出错……除非你答不出来。目前我希望你给这个问题的技术包括WebSocket、HTML、WebGL、客户端数据库等等。只有对Web开发充满热情的人,才会坚持不懈地学习新知识,掌握新技能。

第五,最后一点

计算机科学或网页设计的知识当然有用,但这超出了基础知识。只要基础知识在,一切都有基础,拓展知识并不难。但是,如果正式上班后还要从头学基本功,难度是无法相提并论的。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。