面试题汇总

HTML

html5有哪些新特性?移除了哪些元素?

Doctype作用,HTML5 为什么只需要写?

简述一下你对HTML语义化的理解?

行内元素有哪些,块级元素有哪些,空(void)元素有哪些?行内元素和块级元素有哪些区别和联系?

px,em和rem的区别?如何使用rem?

 

cookie、session、localstorage和sessionstorage的区别及使用场景?

websocket 跟 socket 的区别?

什么是SVG?SVG的优势?SVG与Canvas的区别?

href与src的区别?

WebSocket原理及使用场景?

HTML5的离线存储工作原理?如何使用?

HTML5中的SSE(服务器推送技术)

HTML5中的webSocket、ajax、http

HTML5中的Web Workers

Meta基础知识

input和textarea的区别

 

CSS

CSS3有哪些新特性?

css选择器有哪些?这些选择器的优先级是怎样的?哪些属性可以继承,哪些不可以?

CSS如何计算选择器优先?

为什么要初始化CSS样式?如何进行初始化?

什么是css盒子模型?盒子模型有哪些形式?如何设定?它们的区别是什么?

box-sizing常用的属性及使用场景?

请简要描述margin塌陷和margin重合问题?如何解决?

 

什么是BFC?怎样生成一个BFC?BFC的作用?

伪类和伪元素有什么区别?它们的作用是什么?

::before 和 :after中双冒号和单冒号有什么区别?

 

图像格式jpg、gif、png、svg、bmp、WebP的区别以及应用场景?

什么是SVG?SVG的与其他图像格式(如jpeg、gif等)相比的优势?SVG和Canvas有什么区别?SVG用途?

 

CSS Sprites的原理?CSS Sprites的优点?CSS Sprites的缺点?CSS Sprites的使用?

CSS优化、提高性能的方法有哪些

float和position的区别

rem布局的优缺点

css定位有哪些?float有哪些特点?position哪些特点?float与position共同使用有什么影响?浮动定位于绝对定位的区别?

position跟display、overflow、float这些特性相互叠加后会怎么样?

为什么有时需要清除浮动?清除浮动都有哪些方法?

什么是层叠上下文?如何形层叠上下文?层叠顺序是怎样的?

display:inline-block 什么时候会显示间隙?为什么会出现间隔?该如何解决?

你对line-height是如何理解的?

如果需要手动写动画,你认为最小时间间隔是多久,为什么?

 

怎么让Chrome支持小于12px 的文字?

 

有一个高度自适应的div,里面有两个div,一个高度100px,希望另一个填满剩下的高度

png、jpg、gif 这些图片格式解释一下,分别什么时候用。有没有了解过webp?

display: none; 与 visibility: hidden; 的区别

display有哪些值?说明他们的作用

请列举几种隐藏元素的方法

rgba() 和 opacity 的透明效果有什么不同?

圣杯布局的实现原理?

什么是双飞翼布局?实现原理?

什么是 FOUC(Flash of Unstyled Content)? 如何来避免 FOUC?

介绍使用过的 CSS 预处理器?

抽离样式模块怎么写,说出思路?

网站图片文件,如何点击下载?而非点击预览?

iOS safari 如何阻止“橡皮筋效果”?

设置元素浮动后,该元素的 display 值会如何变化?

怎么让Chrome支持小于12px 的文字?

让页面里的字体变清晰,变细用CSS怎么做?(IOS手机浏览器字体齿轮设置)

font-style 属性 oblique 是什么意思?

css hack原理及常用hack

一个高度自适应的div,里面有两个div,一个高度100px,希望另一个填满剩下的高度

实现一个两列或多列等高布局

实现css动画有哪些

css伪元素有哪些

calc属性

 

 

HTML+CSS

什么是响应式设计,响应式设计的基本原理是什么?

bootstrap响应式实现的原理

网格系统的实现原理

标签有哪些属性,分别代表什么?

常用布局方式有哪些,它们各有什么特点?

手机适配 问题:一个图片比较大或者比较小,怎么适配手机怎么优化?

一个p标签,不换行,超出部分显示为省略号?

css实现字体大写?

用一个div模拟textarea的实现

纯css画三角形?

一个背景图的线性渐变?

圣杯布局和双飞翼布局?

如何让一个不定宽高的盒子水平垂直居中?

让大div里面的小div水平垂直都居中

三栏布局:假设高度已知,其中左栏、右栏宽度各位300px,中间自适应?

一个块级元素的水平居中,你有哪几种方式可以实现?使用flex让元素水平居中有做过吗?

CSS实现一个自适应的正方形

CSS实现宽度自适应100%,宽高16:9的比例的矩形

flex弹性布局,移动端适配方案有哪些

如果弹出的菜单位置过于贴近边框,如何调整这个元素的位置

现在有一大段文字,如何在页面中设置一个窗口滚动播出这段文件(轮播),轮播图如何解决卡顿问题,有手写过轮播图你,原理是什么

CSS动画会吗,怎么样用CSS实现一个loading效果

给你一个DOM元素,用CSS的方式让他呈现两色的效果,只有一个DOM元素 

websocket实现原理 

 

 

JavaScript

JavaScript 有哪些数据类型

介绍一下 JS 有哪些内置对象

讲讲JS的语言特性

JS数组有哪些常用方法?

JS字符串有哪些常用方法?

substr()和 substring()有什么区别? 

什么是命令式编程?什么是声明式编程?

什么是面向对象编程?

JS判断数据类型的各种方法?

undefined 和 null 有什么区别

Js 有哪些创建对象的方式?

new一个对象经历了哪些步骤?

对 this 的理解?

apply()、call()和 bind() 的区别及使用?

new 操作符具体干了什么

JS如何实现对对象的拷贝(浅拷贝与深拷贝)?

JS如何实现继承?

JS中的类型转换规则?

转换为字符型方法:

转换为布尔型

转换为数值型

什么是闭包?

介绍一下 JavaScript 原型?原型链?它们有何特点

Ajax是什么? 如何创建一个Ajax?

同步和异步的区别?怎么异步加载 JavaScript?

什么是内存泄漏?哪些操作会造成内存泄漏?

谈谈垃圾回收机制方式及内存管理

垃圾回收策略

什么时候触发垃圾回收?

AMD(Modules/Asynchronous-Definition)、CMD(Common ModuleDefinition)规范区别?

对AMD和CMD的理解,它们有什么区别

什么冒泡与捕获?事件委托的原理是什么?它的使用场景有哪些?

拖拽会用到哪些事件被拖拽元素

Javascript中的定时器有哪些?他们的区别及用法是什么?

如何使用ajax?

json和xml的区别?

请解释JSONP的工作原理,以及它为什么不是真正的AJAX?

怎样添加、移除、移动、复制、创建和查找节点?

有多个请求第一个完成后才执行第二,第二个完成后才执行第三个,你有几种方法实现?

如何防止表单重复提交?有几种方法?

WEB应用从服务器主动推送Data到客户端有那些方式?

js设计模式

为什么JS是单线程?JS中的Event Loop(事件循环)?JS如何实现异步?setimeout?

内存泄漏、垃圾回收机制、哪些情况会导致内存泄漏 

window的onload事件和domcontentloaded的区别

原型/原型链/构造函数/实例/继承?用原型实现继承有什么缺点,怎么解决

JS中的arguments对象

JS中的作用域和作用域链

Ajax的原生写法

对象深拷贝、浅拷贝

实现页面加载进度条

函数式编程

怎么判断两个对象是否相等

事件模型、事件流、事件代理

如何让事件先冒泡后捕获

js各运算符的执行顺序

for...in、for...of、forEach()有什么区别

如何获取当前日期

函数柯里化

立即执行函数和使用场景

var的变量提升底层原理是什么?

iframe的优缺点有哪些

BOM属性对象方法

服务端渲染与客户端渲染

事件循环机制event loop、进程和线程、任务队列

创建对象的三种方式

new和Object.create的区别

哪种情况下__proto__和prototype的指向是同一个?

typeof array null undefined NaN分别是什么

把undefined和null转成Number分别是什么

instanceOf和constructor的区别

如何获取元素的父节点和兄弟节点

JS如何获得用户来源(navigator.userAgent)

JS的全排列

Ajax返回204算是成功吗

栈和队列有什么区别,具体的应用场景

preventDefault()、stopPropagation()、return false之间的区别

页面共享数据的方法有哪些

amd,cmd规范

js如何实现一个栈

假如访问A.com存进了一个cookie,在另外一个页面用ajax向A的域名发请求会携带cookie吗

localStorage存储数据格式是什么?怎么样把一个数组存进localSorage?

storage有哪些存储方法

表单提交和ajax的区别

JS中的事件绑定、事件监听、事件委托是什么?

 

JavaScript实例

数组排序

DocumentFragment文档碎片(搞笑批量更新多个节点)

将url后面的参数变成obj?

你如何获取浏览器URL中查询字符串中的参数?

扁平化多维数组

一个顶级对象里面嵌套子对象,子对象里面嵌套孙对象,怎么获取一个对象的深度?

图片预览

怎么判断一个数组里面是否包含一个值?

找到匹配字符串所在的各个位置

字符串去重

判断字符串中字符出现的次数

数组求和

给定任意非负整数,反复累加各位数字直到结果为个位数为止。例如给定非负整数912,第一次累加9+1+2 = 12, 第二次累加1+2 = 3, 3为个位数,循 环终止返回3。

数组去重

判断一个字符串中出现次数最多的字符,统计这个次数

请用js去除字符串空格?

检测一个对象是否有prop属性,没有就抛出异常,有的话返回true,并删掉该属性

浅拷贝和深拷贝的区别?es6中的...扩展运算符是浅拷贝还是深拷贝?一个对象,你有几种方法实现它的深拷贝?

一个顶级对象里面嵌套子对象,子对象里面嵌套孙对象,怎么获取一个对象的深度?

写过ajax封装吗?ajax里面的error你是怎么封装判断的?

数组的翻转(非reverse())

如何去除数组中的重复的项?

登录原理

写一个方法提取一下search里面的参数

写一个API实现insertAfter

假设一个object A里面的值n为1,怎么样知道n改变了,有事件绑定吗

实现一个ajax,兼容

前端防连击throttle和debounce

JS给数字加千位分隔符

 

 

图片懒加载、预加载

手动实现parseInt

为什么会有同源策略

call apply区别,原生实现bind

call,apply,bind 三者用法和区别:角度可为参数、绑定规则(显示绑定和强绑定),运行效率、运行情况。

设计模式(要求说出如何实现,应用,优缺点)/单例模式实现

查找数组重复项

按数组中各项和特定值差值排序

ajax实现过程

闭包的作用理解,以及那些地方用过闭包,以及闭包的缺点,如何实现闭包

cookie和webstrage的区别以及cookie怎么样使用?原生cookie怎么样封装

js的this理解, 如何改变this的指向

cookie有什么限制

js的事件机制

new生成了一个对象的过程(核心return this)

手写一下深拷贝,答案提示:JSON.parse(JSON.stringify(obj)) 用JSON实现深拷贝

== 和 === 的却别,,typeof null的结果是什么

get和post的请求区别

事件委托理解,原理,好处,应用场景

cookie和session的区别和联系

数组常用的方法有哪些

websock的底层原理讲讲

proto 和prototype分别是什么

原型链原理

在原型链上Object再往上是什么

 JS的回收机制说一下

写一下节点的增删改

原型链说一下

谈谈对原型链继承

JS设计模式有哪些

说说bind,apply,call的区别以及bind的实现

js设计模式知道哪些,单例详细说

函数式编程-柯里化JS事件流

作用域链

递归

js事件流

this

闭包的概念,平时如何实现

事件冒泡,事件捕获,事件委托的原理,如何实现委托,事件,委托的有点是什么,事件监听

js事件模型,捕获和冒泡,阻止冒泡

对JS单线程的理解

如何删除一个dom节点

typeof去判断数据类型返回值有哪些

说说事件代理利用的是什么原理

阻止冒泡的函数是什么

cookie有什么特征

js的继承的实现方法

原型链断裂了以后的结果是什么

谈谈JS的异步机制

Ajax如何实现的

如何判断是否为数组?(instanceOf和constructor可以,但是有原型链断裂的风险,Object.toString.call()最稳定)

定时器setTimeout的运行机制

内存泄露的排除定位和解决方法

异步es5 es6 es7分别怎么样解决

hashmap原理 

同步和异步的执行顺序

 一个有序的数组如何进行查找操作

手写一个快速排序

尾递归问题

遍历数组处理用for循环还有什么方法吗 

last-modifined,etg怎么样判断

哈希表是怎么样的结构

说说操作系统的内存管理

怎么样实现一个服务器

cookie跨域的其他解决方案

给你一颗树,如何找到其公共的父节点

情景题:给你一个ul列表,找到点击的li对象,把点击到的对象的字符串翻转,讲出思路并且写出代码

如何快速让字符串变成已千为精度的数字

电脑里有很多大小不一样的照片,我现在要复制到U盘上,但是U盘容量固定,让你写一个程序,挑选一组照片,让U盘的剩余空间最小。

你说到typeof,能不能加一个限制条件typeof只能判断是object(可以判断一下是否拥有数组的方法)

让我设计一个页面,选择男或女,搜索出相对性

你的聊天室项目,如果数据传输出错了怎么办?

写一个API,实现jQuery的$(selector)选择器,要求兼容IE6

用JS模拟一个双向链表

编程题:给出一个字符串(“obj.a”),返回对象属性obj.a,类似eval的效果

计算50个人至少有2个生日相同的概率

JS的如何实现倒计时,为什么不准,校正方式

如何有一个很多的列表,像头条的新闻列表,用户看得多了,列表越来越大,怎么样处理,思考一下

如果有这样的场景:一个模块A作为输出,BCD等扩展模块可以在A做更改后展示A的原来内容或者驾驶CSS后的内容,想想思路

一个数组只有1和2,排序,1在前面,2在后面

一个数组,有很多数字存在2次,只有一个数字寸一次,怎么样找出这个数字

关于iframe内部和外部变量的读取是如何的

给定两个文本文件,找出他们中相同的行都有哪些

假设两台电脑之间同步画板如何实现

 

 

 

ES6

ES6的新特性,并简述它们的作用

对ES6的了解

不一样的变量声明:const和let

模板字符串

箭头函数(Arrow Functions)

函数的参数默认值

Spread / Rest 操作符

for...of 和 for...in

ES6中的类

解构

对象字面量简写法

展开运算符

剩余参数(可变参数)

javascript标准函数this

super 和 extends

async 函数以及 awit 命令

设计一个对象,键名的类型至少包含一个symbol类型,并且实现遍历所有key。(编程题)

有一本书的属性为:{“name”:“《ES6基础系列》”, ”price”:56 };要求使用Proxy对象对其进行拦截处理,name属性对外为“《ES6入门到懵逼》”,price属性为只读。(练习题)

基于第12题的Animal类,定义一个子类Cat并继承Animal类。初始化Cat类的昵称name和年龄age。并拥有实例方法eat,eat函数体内容可自行定义。

promise的理解与使用 

 

ES6用过吗,新增了那些东西,你用到过什么

const和let的区别,可以改变const定义对象某个属性吗

箭头函数,箭头函数的特点

声明 let、const

解构赋值

声明类与继承:class、extend

箭头函数this指向问题、拓展运算符

map和set有没有用过,如何实现一个数组去重,map数据结构有什么优点?

ES6怎么编译成ES5,css-loader原理,过程

ES6转成ES5的常见例子

使用es5实现es6的class

let和var的区别,let的产生背景?

ES6新特性说说

es6用的多的有哪些

箭头函数

symbol

let和var的区别讲讲

箭头函数和ES5和this的指向区别讲讲

ES6的代理是什么

es6和es5的区别

es5如何转为es5-babel

es5和es6:let,const打包后如何变-块级作用域

es6有了解吗,请简单说一下promise机制,异步的承诺机制,顺势说一下解决回调地狱的问题

如果让你实现一个promise怎么样实现

promise的状态有哪些

promise如何从then转为catch的

promise函数

es6模块新特性

es6的特性以及这些特性如何实现的

promise是如何解析异步操作的

如果给a,b,c,d四个时间,执行时间分别为1,2,3,4,怎么样做才能在abc都在执行完后再执行d,除了使用promise还能使用什么方法

ES6 generator async/await了解吗

promise的两个方法,具体实现

Promise的使用与实现

generator(异步编程、yield、next()、await 、async)

 

 

 

TypeScript

typescript和es6的区别

 

 

 

浏览器相关

 

浏览器渲染页面的流程?

回流与重绘?

哪些操作会引起回流?

如何减少回流?

HTTP有什么特点

http和https协议有什么区别

http状态码有那些?分别代表是什么意思?

什么是HTTP持久化和管线化

Http报文

为什么利用多个域名来存储网站资源会更有效

浏览器是由什么组成的

浏览器缓存机制

几个很实用的BOM属性对象方法

谈谈你对SEO的理解

前端怎么控制管理路由

防抖和节流的区别

页面重构怎么操作

浏览器的内核分别是什么?

为什么要使用web缓存?

什么叫优雅降级和渐进增强?(常见)

url请求所经历的过程有哪些?

http 和 https 有何区别?如何灵活使用?

 

 

七层网络协议,每层干嘛的

线程和进程的区别

TCP和UDP的区别

HTTP1.0和HTTP1.1相关我让你听

HTTP1 SPDY HTTP2的对比

简单说一下ICP UDP

Socks5代理是如何实现的,读过协议吗

http状态码,307是什么,401和403的区别

200和304实现缓存的区别

常见的请求方式

tcp和http的区别

强缓存和协商缓存知道吗

为什么HTTP1.1中使用Cache-Control代替Expires

HTTP1.1中Etg和f-None-Match哪个权重比较大

HTTP请求头,响应头里面有哪些

浏览器内存泄露,闭包内存泄露如何解决

输入url到展示页面过程发生了什么?

JS如何计算浏览器的渲染时间的

浏览器是如何实现通过你的代码去找到指定的元素的

浏览器的缓存

浏览器缓存机制

强缓存,协商缓存什么时候用哪个

前端缓存

get和post的区别

301和302的区别

如何避免301跳转https

tcp建立连接三次握手的区别

浏览器如何处理未知的的tab

操作系统进程和线程的区别

TCP/IP体系结构以及每层的主要协议

TCP的三次握手

HTTP各版本比较

线程的哪些资源共享,哪些资源不共享

设计模式有哪些

发送请求有哪些?

https的请求过程

HTTP2.0的优势

HTTP/2有什么新特性

https怎么样校验证书有效性

为什么浏览器会产生同源策略

跨域方法以及怎么样实现的与原理

DNS

对跨域了解吗。jsonp的限制

跨域方法说一下

jsonp的原理是什么,处理script标签还可以通过什么实现?(静态资源标签)

什么情况算是跨域,如何解决跨域问题

了解TCP吗,数据结构简单介绍一下以及你的想法

浏览器那些地方用到了异步

应用层协议有哪些

TCP和UDP

有哪些状态码

 tcp ip分成

重绘与回流

      • 重绘(repaint): 当元素样式的改变不影响布局时,浏览器将使用重绘对元素进行更新,此时由于只需要UI层面的重新像素绘制,因此 损耗较少

      • 回流(reflow): 当元素的尺寸、结构或触发某些属性时,浏览器会重新渲染页面,称为回流。此时,浏览器需要重新经过计算,计算后还需要重新页面布局,因此是较重的操作。会触发回流的操作:
        * 页面初次渲染
        * 浏览器窗口大小改变
        * 元素尺寸、位置、内容发生改变
        * 元素字体大小变化
        * 添加或者删除可见的 dom 元素
        * 激活 CSS 伪类(例如::hover)
        * 查询某些属性或调用某些方法
        * clientWidth、clientHeight、clientTop、clientLeft
        * offsetWidth、offsetHeight、offsetTop、offsetLeft
        * scrollWidth、scrollHeight、scrollTop、scrollLeft
        * getComputedStyle()
        * getBoundingClientRect()
        * scrollTo()
        回流必定触发重绘,重绘不一定触发回流。重绘的开销较小,回流的代价较高。

防抖与节流

cookies、session、sessionStorage、localStorage

浏览器内核

常见http状态码

缓存

200 From cache和200 ok

400,401,403状态码分别代表什么

401状态码

浏览器缓存

http状态码301 302的区别,304是啥

缓存机制,协商协议

cookie, session, token

前端持久化的方式、区别

DNS是怎么解析的

cdn

计算机网络的相关协议

http/https/http2.0

get post区别

ajax、 axios库

tcp三次握手,四次挥手流程

跨域

websocket

Http请求中的keep-alive有了解吗

网络分层

即时通信,除了Ajax和websocket

模块化,commonJS,es6,cmd,amd

 

 

 

Vue

 

说一下Vue的双向绑定数据的原理

解释单向数据流和双向数据绑定

vue生命周期钩子

Vue 如何去除url中的 #

对 MVC、MVVM的理解

vue生命周期的理解

组件通信

vue-router 路由实现

v-if 和 v-show 区别

$route和$router的区别

NextTick 是做什么的

Vue 组件 data 为什么必须是函数

计算属性computed 和事件 methods 有什么区别

对比 jQuery ,Vue 有什么不同

Vue 中怎么自定义指令

Vue 中怎么自定义过滤器

对 keep-alive 的了解

Vue 中 key 的作用

Vue 的核心是什么

vue 等单页面应用的优缺点

vue-router 使用params与query传参有什么区别

为什么组件中的data属性的值必须是一个函数?

MVVM的优点?

谈谈你对vue的理解和看法?

聊聊你对Vue.js的template编译的理解?

请说下具体使用vue的理解?

为什么需要懒加载?

axios是什么?怎么使用?

vue当中的指令和它的用法?

watch 如何使用

methods和computed比较

计算属性如何使用

scss是什么?在vue.cli中的安装使用步骤是?有哪几大特性?

mint-ui是什么?怎么使用?说出至少三个组件使用方法?

什么是RESTful API?怎么使用?

请说下封装 vue 组件的过程?

vue-loader是什么?使用它的用途有哪些?

请说出vue.cli项目中src目录每个文件夹和文件的用法?

vue.cli中怎样使用自定义的组件?有遇到过哪些问题吗?

vue的虚拟dom?

简述一下$nextTick的用法

vuex是什么?怎么使用?哪种功能场景使用它?

vuex是什么?在你开发的项目中是怎么使用vuex?

vuex中使用persistedstate 插件进行长久储存 (需要自己写代码测试

你觉得哪些项目适合vue框架?)

vue中的修饰符

 

vue react jquery比较,有测试过性能吗

vue解决了什么问题

vue双向绑定原理,vue-loader做了什么

vue的生命周期

vuex的状态管理的原理是什么 

MVVM的理解

vue和react的区别

React的特性

vue的原理

react和vue的区别,你开发如何选择技术栈

react的virtual DOM和Diff算法

React的生命周期

Vue的生命周期

如何实现一个自定义组件,不同组件之间如何通信的?

nextTick

生命周期

虚拟dom的原理

双向绑定的原理?数据劫持?

组件通信

父->子

子->父

非父子组件

axios有什么特点

Proxy 相比于 defineProperty 的优势

watch computed区别

virtual dom 原理实现

vue-router(hash, HTML5 新增的 pushState

单页应用,如何实现其路由功能---路由原理

前端路由会不会发请求 

vue-router如何做用户登录权限等

你在项目中怎么实现路由的嵌套

vuex的理解

vue的理解

vue的双向数据绑定的原理

vue怎么样实现数组绑定

redux原理讲讲

React虚拟DOM,生命周期

react父子通信

react生命周期

react通信机制

redux

观察者模式如何实现

requirejs组件化

如何实现订阅者发者模式

MVVM实现原理

vue生命周期

vue跨组件通信实现

vue的props和slot的使用,区别

vuex的原理

vue diff算法

vue的生命周期

哈希的原理

v-model参数

mvvm,mvc,mvp区别

pwa

vue-router不能解决情况和边界情况

transition生命周期

react中props和state的区别

组件怎么样拿到redux的数据

react的事件绑定和原生有什么区别吗

react的虚拟DOM了解什么,这些类型的框架和传统的jd操作dom的优势

react是如何实现数据绑定的

react首次渲染过程

redux和vuex的区别

kut如何优化react的diff,有去提pr吗,为什么

 

Vue实例

 

 

 

jQuery

jQuery 库中的 $() 是什么?

$(document).ready()方法和window.onload有什么区别?

JQuery有几种选择器?

如何用jQuery禁用浏览器的前进后退按钮?

jquery中$.get()提交和$.post()提交有区别吗?

写出一个简单的$.ajax()的请求方式?

$(this) 和 this 关键字在 jQuery 中有何不同?

jquery怎么移除标签onclick属性?

jquery中addClass,removeClass,toggleClass的使用。

jQuery中的Delegate()函数有什么作用?

jQuery的事件委托方法bind 、live 、delegate 、on之间有什么区别?

jQuery中ready方法的实现

jQuery的源码看过没

jQuery原理,平时用jQuery都做过什么

 

 

 

webpack

对webpack的了解

webpack打包原理

webpack热更新原理

WebPack和Grunt和Gulp对比?为什么选择webpack?

webpack工程构建工具怎么样用

webpack里面的webpack.config.js怎么配置

如何配置多入口文件

怎么配置单页应用?怎么配置多页应用

有哪些常见的Loader?他们是解决什么问题的

有哪些常见的Plugin?他们是解决什么问题的

webpack的Loader和Plugin的不同

什么是bundle,什么是chunk,什么是module

webpack本地开发怎么解决跨域的

webpack的构建流程是什么

是否写过Loader和Plugin?描述一下编写loader或plugin的思路

如何利用webpack来优化前端性能

打包插件

优化构建速度

webpack的插件大致流程

 

 

 

node.js

nodejs了解多少

nodejs是单线程还是多线程的,为什么能去开很多异步请求去访问其他接口

Nodejs的线程管理

nodejs的时间方法讲讲看

nodejs的特性,适合处理什么场景

nodejs如何require一个包

Nodejs加载原生的包与自己定义的包路径如何查找

nodejs的优势,用过nodejs的哪些模块

websocket协议,nodejs中有哪些实现了这个协议

对Node的优点和缺点提出了自己的看法?

 

 

 

移动端开发

1像素边框问题

移动设备忽略将页面中的数字识别为电话号码的方法

自适应

pwa

移动端手势

了解web移动开发吗,移动端适配方案有哪些

你有Native开发经验吗,讲下Android如何调用页面的资源

flex弹性布局裂解,移动端适配方案有哪些

移动端开发经验

如何实现移动端布局,适配方案

 

 

 

小程序开发

微信小程序和h5差异,如果有开发weex的经验,可能会加上weex

如何在浏览器端和原生端的代码复用,讲到weex又简单讲了它的原理

小程序的生命周期

小程序的Onlaunch周期不支持同步获取信息之后再执行到下一个生命周期

 

 

 

git

一些基本命令

冲突的解决

 

 

 

兼容性问题

遇到过兼容性的问题吗,要如何处理

如何处理CSS兼容问题

webpack有个插件可以解决css兼容性问题你知道吗(postcss-loader)

兼容过IE的方法

webpack css兼容 

 

 

 

安全性问题

web的安全问题?

前端安全这块了解多少

前端安全XSS、CSRF

说一下web安全,xss,csrf防范
csrf流程,举例子

csrf攻击原理以及防御手段

前端安全(资源枚举,XSS共计,DOS攻击,CSRF攻击)

 

 

 

项目性能优化相关

雅虎优化网站性能的14条规则

雅虎WEB前端网站优化 -- 34条军规

开发及性能优化

页面DOM节点太多,会出现什么问题?如何优化?

如何做性能监测

讲下如何负载均衡

前端性能理解,优化有哪些

webpack项目太大了怎么办

css性能优化,就动画效果,如何从js,cs角度减少回流?

树数据多少非常多怎么样办(懒加载)

页面优化方法

如果现在重新做这个项目,有什么想优化的

怎么样让页面加载更快

一个网页很多很多页面,怎么样让用户体验好一点

 

代码规范与优化

根据HTML语义化编码

CSS书写规范

代码规范

css动画优化

 

 

 

算法

说下快排完整性

数组去重

平衡二叉树

二叉搜索树的原理

如何反转链表

如何在上亿规模的数据中找到最大的一个数

算法:反转二叉树以及时间复杂度

链表找环

算法:给你一个无序数字数组,里面是随机的书,并给出一个目标值,求这个数组的两个数,这个数的和等于目标值,要求这两个数并给出下标,
你能想到最优的办法是什么吗(提示:快排,双指针)

算法题:二叉树层序遍历

算法:给一个无序的数组,让我分割成m组,这个m组里和最大的一组是所有可能的分割情况最小的(二分答案法)

算法:两个排序好的数组,怎么样找他的中位数

排序算法有哪些,时间复杂度,选择排序怎么样搞

数据结构有哪些,红黑树和二叉树的区别,二叉搜索树与二叉平衡树

快排和冒泡原理

  • 1、排序算法

  • 2、动态规划,参见背包问题

  • 3、二叉树

  • 4、加油站问题(贪心算法)

  • 5、二分法

  • 6、二叉树遍历

  • 7、单链表反转

  • 8、取1000个数字里面的质数

  • 9、找出数组中和为给定值的两个元素,如:[1, 2, 3, 4, 5]中找出和为6的两个元素。

  • 10、线性顺序存储结构和链式存储结构有什么区别?以及优缺点

 

 

 

附加题

IO多路复用

前端工程化思想

模块化思想

你为什么选择前端

如何学前端的,看了哪些书

博客写了多少篇

你的技术亮点在哪里

写一下实现合理化

你对三大框架的理解是什么

前端框架用过什么?

项目中使用过构建工具吗

平时如何学习前端的,最近在看的一本书

你有用到express吗

express和koa2的区别

express里面登录的session服务怎么样实现分布式服务

express和koa的对比,两者中间件的原理,koa捕获异常多种情况说一下

你项目里用到第三方登录涉及的oAuth(JWT)协议的实现原理,以及你本地的实现原理,第三方登录怎么样保证安全性

无限滚动方案

你的文件上传方案是什么

前端监控,pm2,如果我服务器挂了,如何快速发现并且定位错误

pm2除了监控还能干什么,如何实现

express中间件如何实现

session+cookie的登录机制

图片压缩的原理

如何处理高并发的情况下,用户顺序问题

如何处理兼容性问题

你遇到过最难的问题是什么

你遇到的最有难度的技术问题是什么

项目中遇到过什么难点,如何解决的

工作中做的项目有什么亮点

ES6 class与ES5 function区别及联系

koa generator能讲一下吗

hybrid

同一个网站,在上海打开慢,在北京打开快,怎么样分析原因,(DNS解析和CDN)

vue怎么监听数组

写过webpack loader吗

微信网页版登录机制思考

最近看过的技术文章和一遍非技术文章(考察表达能力,和主动学习新知识的习惯)

Linux命令用的多吗,怎么样进行进程间通信

kill指令了解过吗

对大前端的理解,前端会发展怎么样

怎么样学前端

遇到问题如何解决

多长时间开始独立做前端,这段时间是如何学习的

学习生涯最失败的事情是什么,怎么样走出来的

如何看待竞争

项目里最难的事情,如何克服

职业规范是怎么样的

如何做单侧,单侧和开发占比应该是多少

是独生子女吗

别人对你的项目认可度,项目做的怎么样

看哪些技术网站

觉得自己的不足

一个项目可能要延期,怎么样处理

长连接

有没有抓过包

有没有用过代理

协同开发需要注意什么

数据结构学过什么

如何实现文件上传的功能

你怎么样维持用户登录状态的

看过什么书

你最荣耀的事情

你怎么样知道我们公司的,为什么来我们公司

简单介绍一下backbone

预约系统如何解决高并发的问题

了解过weex吗

 

 

 

自我介绍

介绍所用技术及成长过程

转载于:https://www.cnblogs.com/leftJS/p/11057784.html

你可能感兴趣的:(面试题汇总)