跳到主要内容

问题

  • 对 https 的理解,对称、非对称加密在哪部使用

  • css 布局 各种定位的方式

  • css 实现水平垂直居中

  • css 实现一个旋转的圆

  • cookie 跨域的处理方案

  • cookie 种在子域下能否携带发送到服务端(SSO 登录)

  • 写一个函数,第一次调用返回 0,之后每次调用返回比之前大 1

  • 闭包、作用域的理解

  • 用原生 xhr 发送一个请求

  • 跨域请求可以携带 cookie 吗

  • axios 与 xhr 的区别,如何用 promise 包装 xhr

  • 讲讲项目中的难点

  • vue 数据绑定的实现原理

  • vue computed 具体在什么阶段进行的依赖收集,具体的过程详细描述

  • vuex 和 redux 的差别

  • 跨域的解决办法

  • 原型链的理解,写一个原型继承

  • 实现一个 sendRequest,有最大请求并发限制

  • EventLoop 的理解

  • 浏览器渲染触发在 EventLoop 的哪个阶段,触发机制是怎么样的

  • https 建立连接的过程及通信 如何劫持,鉴别是否被劫持

  • ES module 与 cjs 的区别

  • Tree shaking 的实现原理

  • 给定一个 sum 检验一棵树中,是否存在一条路径和为 sum,输出该路径

  • 对 vuex 源码上如何实现只能 mutation 更改,而不能直接更改

  • vuex 中如何在层层都可以引用$store

  • vuex 和 redux 的差别

  • 笔试题 6 页

  • css 优先级关系

  • eventloop 的先后顺序(node 内)

  • node 中的垃圾收集机制

  • BFC,IFC,FFC 的区别

  • a11y 是什么,如何理解

  • prototype 的考察

  • TDZ 的考察

  • 写一个数组方法,打乱整个数组顺序,并且每个数字落在各个位置的概率相同

  • one(add(two())) // 3 two(add(one())) // 3 写出 one() two() add()的实现

  • 实现一个 catchPromise 发同一个请求缓存 data 在实际网络层相同 url 只会发出一个请求

  • 给定 n 个 {x, y, w, h}的盒子 按需排列,左上聚拢(层叠后的 max(h)*max(w)最小),求给一个{w,h},输出放置的位置

  • 从输入一个 url 到呈现网页,都有哪些步骤

  • http keep—alive 都解决了哪些问题 keep-alive 是从 c - nginx 建立的还是直接到服务建立的长连接,与 websocket 有什么区别与联系

  • 给定一个 html,输出其中包含的 html 标签数量,可以用 domapi 注意 iframe

  • 实现一个 NumberStack,实现 pop,push,max(n)方法,max(n)返回第 n 大的数,max(n)需要 O(1)的时间复杂度

  • 实现一个 bind 函数

  • 跨域的解决办法,jsonp 的实现原理

  • React 组件的生命周期

  • React 父子组件如何通信的

  • React 层级很深的组件如何通信传值(Context API)

  • React 做了哪些性能优化 PureComponent 的实现原理是什么

  • React setState 后都会发生什么,是否了解

  • React 1000 个列表节点渲染,给出一个优化方案

  • 是否了解 React 事件机制,如果让你实现如何来设计

  • Redux 的原理及理解

  • react-redux 是如何来实现的,connect 是不是一个高阶函数,原理是什么

  • react 与 vue 相比,有什么不同

  • 对缓存的理解,需要什么设置

  • 对代码构建上线流程是否了解,说一下如果让你实现的思路

  • 谈谈对 webpack 的理解,常用哪些 plugin,对 webpack 配置是否了解,对项目打包是否做过什么优化

  • ES6 常用到哪些,对 class 的理解,手写一个对继承的实现

  • Promise 是否了解,如何实现一个 promise

  • class 继承中子类想使用父类的方法,应该用什么方式调用(super 的意义)

  • 箭头函数与正常函数的区别

  • css 实现 border 渐变

  • css 实现下阴影(气泡类 带箭头的阴影)

  • css 对 flex 的理解

  • 对浏览器渲染机制的理解(具体到细节,从渲染树到 paint 之间究竟发生了什么)

  • 纯 css 实现一个高宽比为 1:3 的盒子 列举几种方式

  • 浏览器的架构,bom,dom

  • 简述 vue 的基本原理

  • vue 的生命周期

  • vue 与 react 的不同

  • vue 父子通信的方式

  • vuex 的原理及理解

  • vue v-model 如何实现的,语法糖实际是什么

  • react 生命周期

  • react context 的理解

  • redux 的原理

  • react-redux 的原理

  • 如何避免 render 的触发

  • 说一下 react vnode 的 diff 算法

  • vnode 的引入与直接操作原生 dom 相比,哪一个相率更高,为什么

  • 对缓存的理解

  • 对 http2 的理解

  • 对 https 的理解

  • 对原型链的理解,画一个经典的原型连接图

  • 对 es6 了解多少

  • 箭头函数与正常函数有哪些区别

  • class 的实现 用原型写一个继承

  • ajax axios fetch 的区别

  • 如何用 promise 封装一个 ajax

  • 项目中的难点和亮点

  • 从输入 URL 到页面加载的过程。

  • 如果有缓存会怎么样。

  • cookie,session,localstorage 区别。

  • http、https

  • CSS 引入的方式。

  • 盒子模型、怪异盒子模型。

  • 引起怪异盒模型的原因,Doctype 作用

  • 浏览器内核有哪些。

  • CSS 预处理,后置处理器

  • CSS3 新增的东西 。

  • position 的五种属性,默认属性,相对定位,绝对定位区别。

  • 前端路由和后端路由的区别。

  • 什么是闭包,什么时候使用闭包,闭包会造成什么问题。callback 是否为闭包

  • 什么情况会造成内存泄露(setTimeout, setInterval),还有呢?

  • 原生 ajax 原理,如何缓存。

  • 给数组添加元素的方法。

  • ES6 新增的数组方法。

  • ES6 新增的数据结构,和 object 的区别

  • react setState 原理

  • 什么是 CDN,页面怎么优化

  • JSONpatth 了解吗

  • 单点登录成熟的方案

  • jQuery 的特点,和现代框架的区别。

  • 什么事虚拟 dom

  • react 事件代理机制

  • 在 svg 中如何嵌入 html 代码片段

  • 讲讲 flex 布局

  • 实现水平垂直居中的方式

  • 讲讲浏览器的重绘、重排

  • ES6 新增的四中集

  • 说一说你最熟悉的前端方向的技术(CSS,HTML,JavaScript 或者框架等)

  • 你所做过的项目中遇到过什么困难,怎么解决的

  • cookie 和 localstorage 的区别

  • localstorage 使用的时候有什么注意点

  • Vue 的双向绑定的实现原理

  • 动态给 Vue 实例增加属性, this.a = 2 a 之前未定义,如何监听 a 的变化

  • 在 vue 中根据索引值修改的数据变动的,是否可以检测到,为什么?如果有这样的场景你怎么处理

  • Vue 中 nextTick 的实现原理 与 node 中的 process.nextTick 的区别

  • 同时发送四个异步请求,但是需要顺序执行 1 -> 2 -> 3 -> 4 的返回结果, 如果 1 到了就执行 1 ,如果 2 先到 1 没到则需要等待 1 执行完毕

  • 如何发送跨域请求,你有几种处理方式

  • script 标签为什么要放在页面的底部

  • 如果 script 标签放在 head 标签中,如何让 js 脚本等待 DOM 加载完成执行

  • 异步加载一段 JavaScript 代码,如何监听这段代码是否加载完毕

  • 不同子域之间如何共享一段 js 脚本

  • 如何在页面上按需加载一个模块,比如点击按钮加载

  • 如何在一个宽高不定的元素中设置垂直和水平居中

  • 行内元素是否可以设置宽高,是否可以设置内外边距

  • 用 CSS 实现,宽度自适应,高度为宽度的两倍

  • 你做过的一个项目,还能有什么优化吗?