美文网首页
前端笔试易错题目进行中

前端笔试易错题目进行中

作者: 白白白白白甲 | 来源:发表于2017-08-29 16:08 被阅读0次
    1. HTML的Doctype作用?严格模式与混杂模式如何区分?他们有何意义?

      1. <!DOCTYPE>声明位于文档的最前面,处于<html>标签之前。告知浏览器的解析器,用什么文档类型规范解析这个文档。
      2. 严格模式的排版和JS运作模式是以该浏览器支持的最高标准运行。在混杂模式中,页面以宽松的向后兼容的方式显示。模拟老式浏览器的行为以防止站点无法工作。
      3. DOCTYPE不存在或格式不正确会导致文档以混杂模式呈现。
    2. document.write和innerHTML的区别

      document.write只能重绘整个页面

      innerHTML可以重绘页面的一部分

    3. 列举异步编程的方法。
      回调函数,这是异步编程最基本的方法。

      事件监听,另一种思路是采用事件驱动模式。任务的执行不取决于代码的顺序,而取决于某个事件是否发生。

      发布/订阅,上一节的事件,完全可以理解为“信号”。

      Promises对象,Promises对象是CommonJS工作组提出的一种规范,目的是为异步编程提供统一接口。

    4. 用户从手机的浏览器访问www.baidu.com,看到的可能跟桌面PC电脑,是不太一样的网页效果,会更适合移动设备使用。请简要分析一下,实现这种网页区分显示的原因及技术原理。

      手机的网速问题、屏幕大小、内存、CPU等。通过不同设备的特征,实现不同的网页展现或输出效果。根据useragent、屏幕大小信息、IP网速、css media Query等原理,实现前端或后端的特征识别和行为改变。

    5. Flappy Bird是风靡一时的手机游戏,玩家要操作一只小鸟穿过无穷无尽的由钢管组成的障碍。如果要你在HTML前端开发这个游戏,为了保证游戏的流畅运行,并长时间运行也不会崩溃,请列举开发要注意的性能问题和解决的方法。

      1. 背景的卷轴效果优化。背景不能是无限长的图片拼接,必须有回收已移出的场景的方法。

      2. 将复杂运算从主UI线程中解耦。比如场景中小鸟的运动轨迹、碰撞算法等,需要在空闲时间片运算,不能和UI动画同时进行。

      3. 将比较大的运算分解成不同的时间片,防止阻塞主UI线程。最好使用webworker。

      4. 注意内存泄漏和回收。使用对象池管理内存,提高内存检测和垃圾回收。

      5. 进行预处理。将一些常用的过程进行预处理,

      6. 控制好帧率。将1秒分解成多个时间片,在固定间隔时间片进行UI动画,其他时间片用在后台运算。

    6. 给出伪元素(::before, ::after)的几种使用场景?

      1. 清除浮动时
      2. 利用attr()来实现某些动态功能时
      3. 与counter()结合实现序号问题,而不用使用列表元素
      4. 实现各种特效

    相关文章

      网友评论

          本文标题:前端笔试易错题目进行中

          本文链接:https://www.haomeiwen.com/subject/ezoodxtx.html