前端Web开发人员面试问题
在某些方面,即使是最具技术性的职位也需要具备所有职位的强大候选人所具备的共同品质:学习的意愿;合格的技能;对工作的热情。
即使是大学表现,虽然它可以帮助你评估正规教育,但也不能给出一个完整的画面。这并不是要低估扎实的计算机科学背景的重要性。有些东西是什么时候要看的雇佣一个网络开发人员:
了解基本的算法概念
•讨论基本的算法,他们如何发现/思考/排序
•他们能否对数据库有更广泛的理解
•他们有建模的方法吗?
他们了解最新的事态发展吗?如果是这样,如何?寻找他们最喜欢的技术书籍。他们在Twitter上关注哪些人,他们会转向哪些博客?
他们在Github上活跃吗?他们是否为开源软件项目做出了贡献?或者参加黑客马拉松。简而言之,他们对所选领域的知识兴趣有多强烈?这是如何证明的?询问其他项目(如游戏开发)。忠诚、好奇的候选人会脱颖而出。
计算机科学问题
网络
- 哪些HTTP状态代码类分别用于指定成功、客户端错误和服务器错误?
- 用自己的话描述事件传播(冒泡阶段)。DOM事件流中还有其他的阶段吗?
- 什么时候
DOMContentLoaded
和负载
事件被触发? - 你会在前面放置一个异步脚本标签吗
< /身体>
? - 将同源策略描述为web浏览器安全模型的一部分。给出它可能带来的一些实际限制。
- 为什么HTML5 History API对于所有单页应用程序如此重要?
- 现代浏览器提供什么存储选项?
- 哪些步骤构成关键渲染路径的web浏览器?
- 为什么你认为pagvisibility API是有用的?
- 给一个今天可用的推web技术的基本概述
Javascript
- 你知道哪些Javascript引擎?
- 对象在Javascript中是通过引用还是通过值传递的?
1 + 2 + 4等于多少
评估?是什么“1”= = 1
?- 编写一个代码片段来演示ES6 Promise API的使用
- 解释一下为什么下面这些不适合你的生活:
函数foo () {} ();
- 解释bind。
- 用你自己的话描述什么是结束。
- 你有一个想法,你想尽快尝试。你会使用什么工具来创建原型?
- 这个事件循环是关于什么的?鼠标点击将导致一个新项目被添加到调用堆栈或任务队列?
- 警戒会显示什么?
Var foo = 1;Function bar() {if (!foo) {var foo = 10;}警报(foo);} bar ();
HTML / CSS
- 你为什么要用
<强>
而不是< b >
? - HTML5有哪些关键的新特性?
- 文档类型是什么?
- 定位CSS通常是一个好主意吗
<链接>
年代之前< >脚本
标签? - 解释CSS框模型。哪些属性是它的一部分?
- 描述z指数和叠加环境是如何形成的。
- 响应式设计与适应性设计有何不同?
- 在CSS中,类和id的区别是什么?
- display: inline和display: inline-block的区别是什么?
- 相对、固定、绝对和静态定位元素之间的区别是什么?