最佳面试题

HTML

HTML5新特性,语义化

浏览器的标准模式和怪异模式

xhtml和html的区别

使用data-的好处

meta标签

canvas

HTML废弃的标签

IE6 bug,和一些定位写法

css js放置位置和原因

什么是渐进式渲染

html模板语言

meta viewport原理



 

CSS

盒模型,box-sizing

CSS3新特性,伪类,伪元素,锚伪类

CSS实现隐藏页面的方式

如何实现水平居中和垂直居中。

说说position,display

请解释*{box-sizing:border-box;}的作用,并说明使用它的好处

浮动元素引起的问题和解决办法?绝对定位和相对定位,元素浮动后的display值

link和@import引入css的区别

解释一下css3的flexbox,以及适用场景

inline和inline-block的区别

哪些是块级元素那些是行级元素,各有什么特点

grid布局

table布局的作用

实现两栏布局有哪些方法?

css dpi

你知道attribute和property的区别么

css布局问题?css实现三列布局怎么做?如果中间是自适应又怎么做?

流式布局如何实现,响应式布局如何实现

移动端布局方案

实现三栏布局(圣杯布局,双飞翼布局,flex布局)

清除浮动的原理

overflow:hidden有什么缺点?

padding百分比是相对于父级宽度还是自身的宽度

css3动画,transition和animation的区别,animation的属性,加速度,重力的模拟实现

CSS 3 如何实现旋转图片(transform: rotate)

sass less

对移动端开发了解多少?(响应式设计、Zepto;@media、viewport、JavaScript 正则表达式判断平台。)

什么是bfc,如何创建bfc?解决什么问题?

CSS中的长度单位(px,pt,rem,em,ex,vw,vh,vh,vmin,vmax)

CSS 选择器的优先级是怎样的?

雪碧图

svg

媒体查询的原理是什么?

CSS 的加载是异步的吗?表现在什么地方?

常遇到的浏览器兼容性问题有哪些?常用的hack的技巧

外边距合并

解释一下“::before”和“:after”中的双冒号和单冒号的区别



 

JS

js的基本类型有哪些?引用类型有哪些?null和undefined的区别。

如何判断一个变量是Array类型?如何判断一个变量是Number类型?(都不止一种)

Object是引用类型嘛?引用类型和基本类型有什么区别?哪个是存在堆哪一个是存在栈上面的?

JS常见的dom操作api

解释一下事件冒泡和事件捕获

事件委托(手写例子),事件冒泡和捕获,如何阻止冒泡?如何组织默认事件?

对闭包的理解?什么时候构成闭包?闭包的实现方法?闭包的优缺点?

this有哪些使用场景?跟C,Java中的this有什么区别?如何改变this的值?

call,apply,bind

显示原型和隐式原型,手绘原型链,原型链是什么?为什么要有原型链

创建对象的多种方式

实现继承的多种方式和优缺点

new 一个对象具体做了什么

手写Ajax,XMLHttpRequest

变量提升

举例说明一个匿名函数的典型用例

指出JS的宿主对象和原生对象的区别,为什么扩展JS内置对象不是好的做法?有哪些内置对象和内置函数?

attribute和property的区别

document load和document DOMContentLoaded两个事件的区别

=== 和 == , [] === [], undefined === undefined,[] == [], undefined == undefined

typeof能够得到哪些值

什么是“use strict”,好处和坏处

函数的作用域是什么?js 的作用域有几种?

JS如何实现重载和多态

常用的数组api,字符串api

原生事件绑定(跨浏览器),dom0和dom2的区别?

给定一个元素获取它相对于视图窗口的坐标

如何实现图片滚动懒加载

js 的字符串类型有哪些方法? 正则表达式的函数怎么使用?

深拷贝

编写一个通用的事件监听函数

web端cookie的设置和获取

setTimeout和promise的执行顺序

JavaScript 的事件流模型都有什么?

navigator对象,location和history

js的垃圾回收机制

内存泄漏的原因和场景

DOM事件的绑定的几种方式

DOM事件中target和currentTarget的区别

typeof 和 instanceof 区别,instanceof原理

js动画和css3动画比较

JavaScript 倒计时(setTimeout)

js处理异常

js的设计模式知道那些

轮播图的实现,以及轮播图组件开发,轮播10000张图片过程

websocket的工作原理和机制。

手指点击可以触控的屏幕时,是什么事件?

什么是函数柯里化?以及说一下JS的API有哪些应用到了函数柯里化的实现?(函数柯里化一些了解,以及在* 函数式编程的应用,最后说了一下JS中bind函数和数组的reduce方法用到了函数柯里化。)

JS代码调试

由于篇幅限制,展示了部分内容截图,需要完整文档资料的,可以点击下方卡片免费获取↓↓↓

点击免费领取前端最新面试资料

框架

使用过哪些框架?

zepto 和 jquery 是什么关系,有什么联系么?

jquery源码如何实现选择器的,为什么$取得的对象要设计成数组的形式,这样设计的目的是什么

jquery如何绑定事件,有几种类型和区别

什么是MVVM,MVC,MVP

Vue和Angular的双向数据绑定原理

Vue,Angular组件间通信以及路由原理

react和vue的生命周期

react和vue的虚拟dom以及diff算法

vue的observer,watcher,compile

react和angular分别用在什么样的业务吗?性能方面和MVC层面上的区别

jQuery对象和JS的Element有什么区别

jQuery对象是怎么实现的

jQuery除了它封装了一些方法外,还有什么值得我们去学习和使用的?

jQuery的$(‘xxx’)做了什么事情

介绍一下bootstrap的栅格系统是如何实现的

浏览器相关

跨域,为什么JS会对跨域做出限制

前端安全:xss,csrf...

浏览器怎么加载页面的?script脚本阻塞有什么解决方法?defer和async的区别?

浏览器强缓存和协商缓存

浏览器的全局变量有哪些

浏览器同一时间能够从一个域名下载多少资源

按需加载,不同页面的元素判断标准

web存储、cookies、localstroge等的使用和区别

浏览器的内核

如何实现缓存机制?(从200缓存,到cache到etag再到)

说一下200和304的理解和区别

什么是预加载、懒加载

一个 XMLHttpRequest 实例有多少种状态?

dns解析原理,输入网址后如何查找服务器

服务器如何知道你?

浏览器渲染过程

ie的某些兼容性问题

session

拖拽实现

拆解url的各部分

ES6

谈一谈 promise

所有的 ES6 特性你都知道吗?如果遇到一个东西不知道是 ES6 还是 ES5, 你该怎么区分它

es6的继承和es5的继承有什么区别

promise封装ajax

let const的优点

es6 generator 是什么,async/await 实现原理

ES6和node的commonjs模块化规范区别

箭头函数,以及它的this

计算机网络

HTTP协议头含有哪些重要的部分,HTTP状态码

网络url输入到输出怎么做?

性能优化为什么要减少 HTTP 访问次数?

Http请求的过程与原理

https(对是https)有几次握手和挥手?https的原理。

http有几次挥手和握手?TLS的中文名?TLS在哪一网络层?

TCP连接的特点,TCP连接如何保证安全可靠的?

为什么TCP连接需要三次握手,两次不可以吗,为什么

为什么tcp要三次握手四次挥手?

tcp的三次握手和四次挥手画图(当场画写ack 和 seq的值)?

tcp与udp的区别

get和post的区别?什么情况下用到?

http2 与http1 的区别?

websocket

什么是tcp流,什么是http流

babel是如何将es6代码编译成es5的

http2的持久连接和管线化

域名解析时是tcp还是udp

域名发散和域名收敛

Post一个file的时候file放在哪的?

HTTP Response的Header里面都有些啥?

工程化

对webpack,gulp,grunt等有没有了解?对比。

webpack的入口文件怎么配置,多个入口怎么分割。

webpack的loader和plugins的区别

gulp的具体使用。

前端工程化的理解、如何自己实现一个文件打包,比如一个JS文件里同时又ES5 和ES6写的代码,如何编译兼容他们

模块化

对AMD,CMD,CommonJS有没有了解?

为什么要模块化?不用的时候和用RequireJs的时候代码大概怎么写?

说说有哪些模块化的库,有了解过模块化的发展的历史吗?

分别说说同步和异步模块化的应用场景,说下AMD异步模块化实现的原理?

如何将项目里面的所有的require的模块语法换成import的ES6的语法?

使用模块化加载时,模块加载的顺序是怎样的,如果不知道,根据已有的知识,你觉得顺序应该是怎么样的?

Nodejs

对nodejs有没有了解

Express 和 koa 有什么关系,有什么区别?

nodejs适合做什么样的业务?

nodejs与php,java有什么区别

Nodejs中的Stream和Buffer有什么区别?

node的异步问题是如何解决的?

node是如何实现高并发的?

说一下 Nodejs 的 event loop 的原理

数据结构

基本数据结构:(数组、队列、链表、堆、二叉树、哈希表等等)

8种排序算法,原理,以及适用场景和复杂度

说出越多越好的费波拉切数列的实现方法?

性能优化

cdn的用法是什么?什么时候用到?

浏览器的页面优化?

如何优化 DOM 操作的性能

单页面应用有什么SEO方案?

单页面应用首屏显示比较慢,原因是什么?有什么解决方案?

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

vues

刚好遇见你

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值