前端面试题(2017-11-30)

来源:互联网 发布:设a是2n 1阶矩阵 编辑:程序博客网 时间:2024/06/10 20:43

html部分

什么是DTD,为什么要声明 你知道几种形式
css部分

让一个元素相对于父级垂直水平居中(考虑到块元素,内联元素,不定宽高)
position有几种取值(5种,4种常用的加-webkit-sticky)
解释下盒模型;box-sizing默认值
写出你知道的伪类(基础hover link visited,加分disabled valid invalid out-of-range等)
如何解决ip手机1px线的问题
什么情况会触发gpu加速
BFC是什么,哪些属性会触发BFC
REM;你是如何利用REM写自适应网页的
JS部分

call,apply,bind的区别。实现一个bind函数
prototype和proto的区别
伪数组怎么转成数组
怎么判断一个对象是不是数组(!isArray)
实现一个indexOf
add(1)(2)(3)(4)… 无限柯里化实现参数相加(考察toString和valueOf)
闭包应用场景,对函数式的了解
什么情况下,执行一个匿名函数 这个函数的this不指向window(说出几种除call,bind,apply之外的情况)
实现原型继承。构造函数继承模式和原型模式的优缺点,分别的适用场景(js高程第6章重点内容)
ES6了解么,觉得ES6有哪些有用的改进
symbol的作用场景,怎么看待Set Map,能否实现Object.assign()
promise解决了什么问题。你是如何处理多个异步函数并行的
实现一个随机10位字符串(/d/w)
amd、cmd的区别,module.exports和exports的区别
页面部分

页面加载的顺序
原生实现事件委托
说一下事件流,和不同浏览器的差异
对虚拟dom了解么,有什么优势
说出几条页面性能优化的建议
前端优化策略列举
首屏,白屏时间如何计算
谈谈前端渲染 VS 后端渲染
http 部分

http和https的区别
知道有哪些状态码
get和post的区别
怎么解决跨域问题
jsonp和ajax区别
http劫持,dns劫持
前后端分离,用户登录的安全性问题
怎么设置cookie,cookie和localstorage区别
输入一个URL到页面呈现,经历了什么
算法部分

排序算法
“ab-cd-efg-hi-jk” => “abCdEfgHiJk”(注意a是小写)
查询一个数字数组前n个最大数(!sort)
困住的雨水 (Trapping Rain Water)
[1,2,3,’10’,11,NaN,’-20′,null] 按数字大小排序,且NaN在最前,null在最后
扩展部分

你觉得前端分几个等级,分别是做什么的 你现在处于哪个等级
平时有了解什么新的东西么
平时是怎么学习的,有自己做过一些小东西么
了解过哪些前端框架,他们分别解决了什么问题 每个框架的适用场景
在团队里主动推动过什么事情么,比如推行某个框架 推行前后端分离
你理解的前后端分离是怎样的,为什么要前后端分离
有学习过其他语言么,有没想想过自己独立完成一个网站
给你一个项目让你去评估开发时间,你是怎样评估并给出结果的
怎么看待当下前端这个行业,如果要分方向(SPA,页面重构,canvas动画等)你想做哪个方向