面试题库

  • 自我介绍
  • 感兴趣的项目详细介绍一下;
  • 浏览器内核的理解,常用的浏览器内核
Trident内核:IE,MaxThon,TT,The World,360,搜狗浏览器等。 [又称MSHTML]
Gecko内核:Netscape6及以上版本,FF,MozillaSuite/SeaMonkey等
Presto内核:Opera7及以上。 [Opera内核原为:Presto,现为:Blink]
Webkit内核:Safari,Chrome等。 [ Chrome的:Blink(WebKit的分支)]
  • html5 中的离线存储 cache.manifest
  • 请描述一下 cookies,sessionStorage 和 localStorage 的区别?
  • iframe有那些缺点?
  • 如何在页面上实现一个圆形的可点击区域?
1、map+area或者svg
2、border-radius
3、纯js实现 需要求一个点在不在圆上简单算法、获取鼠标坐标等等
  • CSS 优先级算法如何计算?
- 优先级就近原则,同权重情况下样式定义最近者为准;
- 载入样式以最后载入的定位为准;

优先级为:
    同权重: 内联样式表(标签内部)> 嵌入样式表(当前文件中)> 外部样式表(外部文件中)。
    !important >  id > class > tag
    important 比 内联优先级高
  • div 水平居中,垂直居中
  • position 有哪些属性,分别介绍一下;
  • css 创建一个三角形原理;
  • JavaScript原型,原型链? 有什么特点?
每个对象都会在其内部初始化一个属性,就是prototype(原型),当我们访问一个对象的属性时,如果没个对象内部不存在这个属性,那么他就会去prototype里找这个属性,这个prototype又会有自己的prototype,于是就这样一直找下去,也就是我们平时所说的原型链的概念。
关系:instance.constructor.prototype = instance.proto
  • 介绍一下 immutable data
  • react 生命周期
  • react component,purecomponet 区别?
  • ajax & fetch 的区别?
  • promise
  • 0.1 + 0.2 !== 0.3
  • es6 的新特性或者语法
  • get, post 区别,使用规范?
  • 跨域是什么,有哪些方案?
  • http 常见的返回码
  • redux 的简单介绍一些,什么原则?
  • react dom diff 算法有没有了解过?
  • 前端路由的原理?
  • 使用 oc 开发了什么 app,简单介绍一下;
  • 技术栈选型上的考虑:vue + vuex + webpack + flexble + sass
  • js / oc, jsbridge, react native 的使用感受,区别
  • 引入 iscoll 解决的什么问题?原理是什么?
  • 网页打开速度优化方式有哪些?实践过哪些?
  • 对前端工程师这个职位是怎么样理解的?它的前景会怎么样?
  • 有没有 github,在 github 有没有做过什么开源项目,介绍一下?
  • 工作中遇到什么难点问题没有,怎么去解决的?
  • 介绍一个你最得意的作品,项目?

做几道题目

// 1. throttle的简单实现
function throttle(func, duration) {
  // 在这里编写具体实现
}

window.addEventListener('scroll', throttle(func, 50), false);

// 2. 实现一个深度优先搜索算法(非递归)

function dfs(tree, name) {
  // 请在这里实现
}

var tree = {
  name: '中国',
  children: [{
      name: '北京',
      children: [{
          name: '朝阳群众'
        },
        {
          name: '海淀区'
        }
      ]
    },
    {
      name: '浙江省',
      children: [{
          name: '杭州市'
        },
        {
          name: '嘉兴市'
        }
      ]
    }
  ]
};

var result = dfs(tree, '杭州市');
console.log(result);
最后修改:2019 年 09 月 16 日
如果觉得我的文章对你有用,请随意赞赏