ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

前端面试题库总结

2021-04-17 15:56:21  阅读:156  来源: 互联网

标签:区别 实现 前端 哪些 如何 写出 面试 题库 什么


全部面试题汇总

  • 写一个 mySetInterVal(fn, a, b),每次间隔 a,a b,a 2b 的时间,然后写一个 myClear,停止上面的 mySetInterVal
  • 合并二维有序数组成一维有序数组,归并排序的思路
  • 斐波那契数列
  • 字符串出现的不重复最长长度
  • 介绍chrome 浏览器的几个版本
  • React 项目中有哪些细节可以优化?实际开发中都做过哪些性能优化
  • react 最新版本解决了什么问题 加了哪些东西
  • 说一下 Http 缓存策略,有什么区别,分别解决了什么问题
  • 介绍防抖节流原理、区别以及应用,并用JavaScript进行实现
  • 前端安全、中间人***
  • 对闭包的看法,为什么要用闭包?说一下闭包原理以及应用场景
  • css 伪类与伪元素区别
  • 有一堆整数,请把他们分成三份,确保每一份和尽量相等(11,42,23,4,5,6 4 5 6 11 23 42 56 78 90)
  • 实现 lodash 的_.get
  • 实现 add(1)(2)(3)
  • 实现链式调用
  • React 事件绑定原理
  • 类数组和数组的区别,dom 的类数组如何转换成数组
  • webpack 做过哪些优化,开发效率方面、打包策略方面等等
  • 说一下事件循环机制(node、浏览器)
  • 如何封装 node 中间件
  • node 中间层怎样做的请求合并转发
  • 介绍下 promise 的特性、优缺点,内部是如何实现的,动手实现 Promise
  • 实现 Promise.all
  • React 组件通信方式
  • redux-saga 和 mobx 的比较
  • 说一下 react-fiber
  • 手写发布订阅
  • 手写数组转树
  • 手写用 ES6proxy 如何实现 arr[-1] 的访问
  • 手写实现 Array.flat()
  • react 实现一个全局的 dialog
  • [实操题]输入一条 polyline,输出 polyline 的中点
  • Umi 和 dva 分别是干嘛用的?为什么会有 umi dva 的出现?使用起来有什么不方便的地方吗?
  • React 数据持久化有什么实践吗?
  • 使用过 mobox 吗?mobox 和 redux 有什么区别?
  • 文件上传如何做断点续传
  • 大数计算如何实现
  • 请用算法实现,从给定的无序、不重复的数组data中,取出n个数,使其相加和为sum。并给出算法的时间/空间复杂度。(不需要找到所有的解,找到一个解即可)
  • 什么是深拷贝,和浅拷贝有什么区别,动手实现一个深拷贝
  • 实现一个方法判断 html 中的标签是否闭合
  • mysql 和 mongodb 区别
  • V8 机制讲解
  • 说一下盒子模型,以及标准情况和 IE 下的区别
  • 箭头函数和普通函数的区别
  • 说下 webpack 的 loader 和 plugin 的区别,都使用过哪些 loader 和 plugin
  • Css 如何画出一个扇形,动手实现下
  • 介绍下 webpack,并说下 Webpack 的构建流程
  • 说下 tree-shaking 的原理
  • Webp 格式的图片怎么生成,使用有什么兼容性问题,如何怎么解决
  • React 高阶组件 renderprops hooks 有什么区别,为什么要不断迭代
  • 说一下 React setState 原理
  • 说一下 React diff 算法
  • 说一下 React 生命周期,以及都有哪些改变,为什么去掉了那几个旧的生命周期
  • React key 是干嘛用的 为什么要加?key 主要是解决哪一类问题的
  • Redux 中异步的请求怎么处理
  • CDN 是什么?描述下 CDN 原理?为什么要用 CDN?
  • PWA 是什么?对 PWA 有什么了解
  • 讲一下 webpack 原理, loader 和 plugin,你知道哪些模块化标准,说下 cjs 和 esmodule 的区别
  • es5 实现 isInteger
  • 单向链表实现队列
  • 写出输出结果
  • 将给定的数组从顶级分类递归查找子分类,最终构建一个树状数组
  • 手写 dom 操作,翻转 li 标签,如何处理更优
  • 怎样判断一个对象是否是数组,如何处理类数组对象
  • 是否熟悉 Node,主要做过哪些业务,平时用过什么包?
  • 是否了解 glob,glob 是如何处理文件的,业界是否还有其它解决方案
  • 说一下 Vue 的 keep-alive 是如何实现的,具体缓存的是什么?
  • Redux 和 Vuex 有什么区别,说下一它们的共同思想
  • 谈一下微信小程序的架构以及为什么要用到双线程
  • 随便打开一个网页,用 JavaScript 打印所有以 s 和 h 开头的标签,并计算出标签的种类
  • 1000*1000 的画布,上面有飞机、子弹,如何划分区域能够更有效的做碰撞检测,类似划分区域大小与碰撞检测效率的算法,说一下大致的思路
  • 移动设备安卓与 iOS 的软键盘弹出的处理方式有什么不同
  • iPhone 里面 Safari 上如果一个输入框 fixed 绝对定位在底部,当软键盘弹出的时候会有什么问题,如何解决
  • iPhone 里面 Safari 上如果一个输入框 fixed 绝对定位在底部,当软键盘弹出的时候会有什么问题,如何解决
  • iPhone 里面 Safari 上如果一个输入框 fixed 绝对定位在底部,当软键盘弹出的时候会有什么问题,如何解决
  • 给定一个数组,按找到每个元素右侧第一个比它大的数字,没有的话返回-1 规则返回一个数组
  • 说一说 promise,有几个状态,通过 catch 捕获到 reject 之后,在 catch 后面还能继续执行 then 方法嘛,如果能执行执行的是第几个回调函数
  • var、let、const 的区别
  • 说一下 GC
  • BFC 是什么?触发 BFC 的条件是什么?有哪些应用场景?
  • 说一下浏览器解析 Html 文件的过程
  • 说一下什么是重绘重排,哪些操作会造成重绘重排
  • 什么情况会出现浏览器分层
  • 通过 link 进来的 css 会阻塞页面渲染嘛,Js 会阻塞吗,如果会如何解决?
  • 如何实现按需加载
  • 讲一下 import 的原理,与 require 有什么不同
  • 为什么 useState 要使用数组而不是对象
  • 从输入 URL 到页面加载全过程
  • 请实现如下的函数
  • DNS 解析的具体过程
  • 常见的 http 请求头都有哪些,以及它们的作用
  • encoding 头都有哪些编码方式
  • utf-8 和 asc 码有什么区别
  • tcp 和 udp 有什么区别?tcp 怎样确保数据正确性?tcp 头包含什么?tcp 属于那一层?
  • 传输层和网络层分别负责什么,端口在什么层标记
  • 介绍下 Https,和 http 的区别是什么?https 为什么比 http 安全?如何进行配置?
  • 说一下加密握手的过程
  • 对称加密和非对称加密的区别和用处
  • 是否用过 restful 接口,和其他风格的有什么区别
  • 说一下 get、post、put 的区别
  • 说一下对面向对象的理解,面向对象有什么好处
  • 类设计:使用面相对象设计一个停车场管理系
  • 实现输出一个十六进制的随机颜色(#af0128a)
  • justify-content:space-between around 有什么区别
  • 手写代码实现kuai-shou-front-end=>KuaiShouFrontEnd
  • 浏览器都有哪些进程,渲染进程中都有什么线程
  • 说说浏览器渲染流程,分层之后在什么时候合成,什么是重排、重绘,怎样避免
  • 什么是同源策略?什么是跨域?都有哪些方式会造成跨域?解决跨域都有什么手段?
  • 什么是 CORS,CORS 需要前端配置还是后端配置?
  • 设计一个 Student 组件,实现输入姓名性别成绩(这三个必填),还有几个不是必填的属性,要设置默认值,点击弹出成绩
  • 设计一个函数,奇数次执行的时候打印 1,偶数次执行的时候打印 2
  • 实现 Promise.then
  • 平时在项目开发中都做过哪些前端性能优化
  • 给定起止日期,返回中间的所有月份
  • 输入两个字符串,输出他们中间的月份
  • 实现一个将 52 张牌随机均等的分给四个人,比如输入 [0,1,2,3....51] ,输出[[1,2,16...],[4,3,6..],[....],[....]]
  • 用尽量短的代码实现一个 arrary 的链式操作,将数组中的大于 10 的值进行一个累加
  • 简单封装一个异步 fecth,使用 async await 的方式来使用
  • 怎么理解 to B 和 to C 的业务
  • 如果有一个项目,随着业务的增长越来越大,怎么办,如何来进行一个拆分或者处理
  • 请写一个函数,输出出多级嵌套结构的 Object 的所有 key 值
  • 使用 Css 实现一个水波纹效果
  • position 定位都有什么属性(不仅仅是绝对定位和相对定位/fix 定位)
  • 写出打印结果,并解释为什么
  • 动手实现一个 repeat 方法
  • setTimeout 有什么缺点,和 requestAnimationFrame 有什么区别
  • versions 是一个项目的版本号列表,因多人维护,不规则,动手实现一个版本号处理函数
  • 怎样用 css 实现一个弹幕的效果,动手实现一下
  • 实现一个多并发的请求
  • 说一下 Css 预处理器,Less 带来的好处?
  • 写出代码执行结果
  • 按要求实现一个 sum 函数
  • 按要求实现 rightView 函数
  • meta 元素都有什么
  • Css 选择器都有什么,权重是怎么计算的
  • 布局都有什么方式,float 和 position 有什么区别
  • Http1 和 Http2 有什么区别,和 http1.1 相比,http2 都有什么特性
  • Import 和 CommonJS 在 webpack 打包过程中有什么不同
  • 说一下 base64 的编码方式
  • 说一下单向数据流有什么好处
  • nth-child和nth-of-type 有什么区别
  • <img>是什么元素
  • flex 布局,如何实现把八个元素分两行摆放
  • 改变 this 指向的方式都有哪些?
  • 说一下 etag 和 lastmodify 的区别
  • 强缓存都有哪些方法来控制
  • 协商缓存都有哪些参数
  • 说一下module.exports和exports的区别,export和export default的区别
  • 说一下 webpack 中 css-loader 和 style-loader 的区别,file-loader 和 url-loader 的区别
  • number 为什么会出现精度损失,怎样避免
  • 说一下对 React 和 Vue 的理解,它们的异同
  • 二叉树序列化反序列化
  • 输入一个数字,找到对应的字母
  • Given an int n, output Mausoleum Array solutions.
  • 实现一个函数将中文数字转成数字
  • 节流
  • 请求是异步的为什么会造成阻塞
  • 脚手架具体都做了哪些事,webpack 具体做了什么配置,怎样优化的打包大小
  • 介绍下 Webpack 的整个生命周期
  • 如何实现 5 秒自动刷新一次页面(具体都有什么方法 reload 之类的)
  • 都了解哪些 ES6、ES7 的新特性,箭头函数可以被 new 吗
  • 说一下 JavaScript 继承都有哪些方法
  • Css 方式实现一个不知道宽高的 div 居中都有哪几种方法
  • 给一个字符串比如'abca',返回第一个不重复的字母
  • 已知函数 A,要求构造⼀个函数 B 继承 A
  • 数组和对象转换为字符串结果
  • 请写出以下代码的打印结果
  • 请写出以下代码的打印结果
  • 要求⽤不同⽅式对 A 进⾏改造实现 A.name 发⽣变化时⽴即执⾏ A.getName
  • 修改以下代码,使得最后⼀⾏代码能够输出数字 0-9(最好能给多种答案)
  • 给定⼀个只包括 '(',')','{','}','[',']' 的字符串,判断字符串是否有效.
  • CDN 有哪些优化静态资源加载速度的机制
  • 请给出识别 Email 的正则表达式
  • 设计 AutoComplete 组件(又叫搜索组件、自动补全组件等)时,需要考虑什么问题?
  • 实现函数接受任意二叉树,求二叉树所有根到叶子路径组成的数字之和
  • webpack 离线缓存静态资源如何做用 localStore
  • 手动实现一个函数,给定一个数组[1,0,2,3,4,-1,-3],输出任意两个值和为 0 的下标
  • 请写出一下代码的打印结果
  • Promise 链式调用如何实现
  • 说一下对BigInt的理解,在什么场景下会使用
  • null 是不是一个对象,如果是,如何判断一个对象是 null,不使用 JavaScript 提供的 api 如何进行判断
  • gitlab 分支管理,线上如果发生 bug 怎么解决?
  • 说一下对于堆栈的理解
  • 介绍排序算法和快排原理
  • [] == ![]为什么
  • 说一下 React.Component 和 Ract.PureComponent 的区别
  • 说一下对 React Hook 的理解,它的实现原理,和生命周期有哪些区别?
  • 如何把真实 dom 转变为虚拟 dom,代码实现一下
  • 说一下错误监控的实现,错误监控的正确使用方式,日志如何分等级
  • 说一下 Vue3 与 Vue2 的对比
  • vue 对数组的方法做了重写的操作,如何实现对 vue2 中对数组操作的 push()方法
  • 手动实现一个 Promisify 函数
  • 说一下 React 有状态组件与无状态组件区别,以及为什么要用,它的优缺点
  • 说一下 Nginx 的缓存策略,强缓存与弱缓存的区别,二者的使用场景
  • 请写出以下代码执行结果
  • 请写出以下代码执行结果
  • 请写出以下代码执行结果
  • 请写出以下代码执行结果
  • 请写出以下代码执行结果
  • 请写出以下代码执行结果
  • 请写出以下代码执行结果
  • 以下 css 最后是什么颜色
  • 说一下什么是死锁
  • 实现以下代码
  • 请实现一个 cacheRequest 方法,保证发出多次同一个 ajax 请求时都能拿到数据,而实际上只发出一次请求
  • 实现一个函数柯里化
  • 一个人每次只能走一层楼梯或者两层楼梯,问走到第 80 层楼梯一共有多少种方法
  • 简述 Vue 的基本原理
  • 简述 Vue 的生命周期以及每个阶段做的事
  • 说一下 Vue 组件的通信方式都有哪些?(父子组件,兄弟组件,多级嵌套组件等等)
  • 说一下 Vuex 的原理以及自己的理解
  • Vue v-model 是如何实现的,语法糖实际是什么
  • 说一下对 React context 的理解
  • 说一下对 React-redux 的理解以及它的原理,主要解决什么问题
  • 说一下 Redux 的原理,介绍下整体的一个工作流程
  • React 如何避免 renderd 的触发
  • 说一下 Vue dom diff 算法
  • 说一下对 vnode 的理解,vnode 的引入与直接操作原生 dom 相比,哪一个相率更高,为什么
  • 说一下对原型链的理解,画一个经典的原型链图示
  • 简述 Grid 布局
  • 说一下 ajax/axios/fetch 的区别
  • 用 Promise 封装一个 ajax
  • 动手实现一个左右固定100px,中间自适应的三列布局?(至少三种)
  • 请描述 CSRF、XSS 的基本概念、***原理和防御措施?
  • 请描述提升页面性能的方式有哪些,如何进行首页加载优化
  • 描述 DOM 事件捕获的具体流程
  • Http 报文的请求会有几个部分?请写出 HTTP 报文的组成部分
  • 301,302,304 的区别
  • 请实现$on,$emit
  • 实现 bind 方法,不能使用 call、apply、bind
  • 手写实现 sleep 函数
  • 介绍一下 node 核心模块(主要是 stream)
  • 说一下 webpack 与 gulp 的区别(源码角度)
  • 请写出原生 js 如何设置元素高度
  • 说一下 Vue 的$nextTick 原理
  • 说一下 vue-router 的原理
  • node 如何做错误监控(运行时与其他)如何生成日志,日志等级
  • Node 的适用场景以及优缺点是什么?
  • Vue 是如何收集依赖的
  • 用原生 js 实现自定义事件
  • 换行字符串格式化
  • 屏幕占满和未占满的情况下,使 footer 固定在底部,尽量多种方法
  • 输入一个日期 返回几秒前、几小时前、几天前、几月前
  • 将 153812.7 转化为 153,812.7
  • 给定一个数组,形如 [1, 1, 2 , 3, 3, 3, 3, 4, 6, 6],给定一个数 n,例如 3,找出给定的数 n 在数组内出现的次数,要求时间复杂度小于 O(n)
  • 说一下 https 获取加密秘钥的过程
  • Css 画一个三角形
  • 说一下 Vue 单页与多页的区别
  • 说一下 Vue 路由实现原理
  • 数组有哪些方法 讲讲区别跟使用场景
  • localstorage、sessionStorage、indexDB 和 cookie 的区别
  • 讲一下函数式编程
  • promise 跟 async await 的区别,使用场景
  • async、await 如何进行错误捕获
  • Css 超出省略怎么写,三行超出省略怎么写
  • Css inherit、initial、unset 三者的区别
  • 介绍下 Flex 布局,属性都有哪些,都是干啥的
  • 点击一个按钮,浏览器会做些什么
  • script 的 async 跟 defer 的区别?
  • React15/16.x 的区别
  • weak-Set、weak-Map 和 Set、Map 区别
  • mvvm 模型和 mvc 模型区别
  • 如何实现一个 mvvm 模型
  • Vue3.0 为什么要用 proxy?是怎么用 proxy 实现数据监听的?
  • valueOf 与 toString 的区别
  • TCP 三次握手
  • koa2 和 express 区别
  • 怎么判断是一个空对象
  • 请写出下面代码的执行结果
  • 请写出下面代码的执行结果
  • 现在有随机整数数组,例如[2,11,20,160,3,1...],请挑出数组内,三个随机整数和为 100 的所有数据。
  • 请只用数组方法和 Math.random()在一条语句的情况下,实现生成给定位数的随机数组,例如生成 10 位随机数组[1.1,102.1,2,3,8,4,90,123,11,123],数组内数字随机生成。
  • 实现一个 setter 方法
  • LocalStorage 加密原理
  • setTimeout 与 setInterval 区别
  • 说一下常见的状态码
  • 项目中如何应用数据结构
  • 304 页面的原理
  • RN、Weex、Dart 的优缺点
  • 知道语义化吗?说说你理解的语义化,如果是你,平时会怎么做来保证语义化?说说你了解的 HTML5 语义化标签?
  • 闭包的核心是什么
  • 响应式布局用到的技术,移动端需要注意什么
  • 写出代码输出结果
  • 实现一个功能,发送请求 5s 时间后,如果没有数据返回,中断请求,提示错误
  • 什么是作用域链
  • 介绍事件冒泡、事件代理、事件捕获,以及它们的关系
  • for..of 和 for...in 是否可以直接遍历对象,为什么
  • 在 map 中和 for 中调用异步函数的区别
  • gennerator yield 的作用
  • promise 的状态有哪些
  • 在 ES6 中有哪些解决异步的方法
  • es6 类继承中 super 的作用
  • cros 的简单请求和复杂请求的区别
  • 统计一组整形数组的最大差值?
  • addEventListener 的第三个参数的作用
  • 上传文件的 Content_Type 什么,node 如何拿到上传的文件内容(不适用第三方插件)?文件内容是一次行传输过去的么
  • 获取 id 为 netease 节点下所有的 checkbox 子元素(不用框架,注意兼容)
  • 使用原型链如何实现继承
  • 如何获取一个对象的深度
  • reduce 函数的功能,如何实现的,动手实现一下
  • 说一下 splice 和 slice 的功能用法
  • 面向对象的三要素是啥?都是啥意思?
  • 函数中的 this 有几种
  • 如何同时获取 html 中的 h1,h2,h3,h4,h5,h6 中的内容
  • JavaScript 的执行流程
  • Promise.resolve(obj),obj 有几种可能
  • 写出代码执行结果
  • nextTick 是在本次循环执行,还是在下次,setTimeout(() => {}, 0)呢?
  • A、B 两个条件组件,如何做到 webpack 只打包条件为 true 的组件,false 的组件不打包
  • 说一下对 vue3.0 的了解,vue3.0 为什么要用代理
  • 子组件可以直接改变父组件的数据么,说明原因
  • webpack 怎么处理内联 css 的
  • webpack 如何做异步加载
  • 客户端缓存有几种方式?浏览器出现 from disk、from memory 的策略是啥
  • 什么是 http?什么是 http2?说下 http 与 http2 的工作流程
  • 客户端如何发送 http 请求
  • 使用正则去掉 Dom 中的内联样式
  • 写一个匹配 ip 地址的正则
  • 写一个匹配 Html 标签的正则
  • 使用 typescript 的装饰器能否实现函数调用前出现加载动画,调用后关闭,如果能,这个加载动画的控制代码是放在哪种装饰器上呢
  • unicode 和 utf8 的关系
  • 介绍下 pm2,pm2 依据什么重启服务
  • 什么是微服务,微服务跟单体应用的区别是啥,用微服务有啥好处?
  • IOC 是啥,应用场景是啥?
  • 是否了解 docker,介绍一下
  • 写出代码执行的打印结果
  • 实现函数
  • 使用过的 koa2 中间件,中间价的原理是什么
  • koa-body 原理
  • 有没有写过中间件,介绍下自己写过的中间件
  • 有没有涉及到 Cluster,说一下你的理解
  • master 挂了的话 pm2 怎么处理
  • Node 如何和 MySQL 进行通信
  • 如何配置 React-Router 实现路由切换
  • 服务端渲染 ***
  • 介绍 Redux 数据流的流程
  • Redux 如何实现多个组件之间的通信,多个组件使用相同状态如何进行管理
  • React 路由的动态加载模块
  • 多个组件之间如何拆分各自的 state,每块小的组件有自己的状态,它们之间还有一些公共的状态需要维护,这如何思考
  • 使用过的 Redux 中间件
  • redux 的设计思想
  • 移动端适配 1px 的问题
  • 居中为什么要使用 transform(为什么不使用 marginLeft/marginTop)
  • Webpack 里面的插件时怎么实现的
  • dev-server 是怎么跑起来的
  • Webpack 抽取公共文件是怎么配置的
  • 项目中如何处理安全问题
  • 怎么实现 this 对象的深拷贝
  • 使用 canvas 绘图时如何组织成通用组件
  • 表单可以跨域吗
  • 搜索请求如何处理?搜索请求中文如何请求?
  • 介绍观察者模式
  • 介绍中介者模式
  • 观察者和订阅-发布的区别,各自用在哪里
  • 通过什么做到并发请求
  • http1.1 时如何复用 tcp 连接
  • 介绍 service worker
  • 介绍 css3 中 position:sticky
  • redux 请求中间件如何处理并发
  • 介绍浏览器事件流向
  • 介绍事件代理以及优缺点,主要解决什么问题
  • React 组件中怎么做事件代理?它的原理是什么?
  • 介绍下 this 的各种情况
  • 前端如何控制管理路由
  • 使用路由时出现问题如何解决
  • React 怎么做数据的检查和变化
  • react-router 里的 Link 标签和 a 标签有什么区别
  • a 标签默认事件禁掉之后做了什么才实现了跳转
  • 整个前端性能提升大致分几类
  • import { Button } from 'antd',打包的时候只打包 button,分模块加载,是怎么做到的
  • 使用 import 时,webpack 对 node_modules 里的依赖会做什么
  • JavaScript 异步解决方案的发展历程以及优缺点
  • cookie 放哪里,cookie 能做的事情和存在的价值
  • cookie 和 token 都存放在 header 里面,为什么只劫持前者
  • 以下 axios 的特点正确的有哪些?(多选题)
  • React 中 Dom 结构发生变化后内部经历了哪些变化
  • React 挂载的时候有 3 个组件,textComponent、composeComponent、domComponent,区别和关系,Dom 结构发生变化时怎么区分 data 的变化,怎么更新,更新怎么调度,如果更新的时候还有其他任务存在怎么处理
  • React 子父组件之间如何传值
  • Redux 中间件是什么东西?接受几个参数?柯里化函数两端的参数具体是什么东西?
  • Redux 中间件· 中间件是怎么拿到 store 和 action?然后怎么处理?
  • state 是怎么注入到组件的,从 reducer 到组件经历了什么样的过程
  • koa 中 response.send、response.rounded、response.json 发生了什么事,浏览器为什么能识别到它是一个 json 结构或是 html
  • koa-bodyparser 如何解析 request
  • 介绍 AST(Abstract Syntax Tree)抽象语法树
  • 安卓 Activity 之间数据是怎么传递的
  • 安卓 4.0 到 6.0 过程中 WebView 对 js 兼容性的变化
  • WebView 和原生是如何通信
  • 对 async、await 的理解,内部原理是怎样的?
  • 清除浮动的方式
  • 接入 Redux 过程?绑定 connect 的过程?connect 的原理
  • == 和 ===的区别,什么情况下用相等==
  • bind、call、apply 的区别
  • 介绍下原型链
  • Linux 754 介绍
  • 介绍冒泡排序、选择排序,说说冒泡排序如何优化
  • transform 动画和直接使用 left、top 改变位置有什么优缺点
  • 如何判断链表是否有环
  • 介绍二叉搜索树的特点
  • 介绍暂时性死区
  • ES6 中的 map 和原生的对象有什么区别
  • RN 如何调用原生的一些功能、如何和原生进行通信
  • react 异步渲染的概念,介绍 Time Slicing 和 Suspense
  • 16.X 中 props 改变后在哪个生命周期中处理
  • 对纯函数的理解
  • 介绍 JSX
  • 如何做 RN 在安卓和 IOS 端的适配
  • RN 为什么能在原生中绘制成原生组件
  • 对虚拟 DOM 的理解?虚拟 DOM 主要做了什么?虚拟 DOM 本身是什么?
  • cookie 的引用为了解决什么问题
  • 如何设计一个 localStorage,保证数据的实效性
  • 介绍下 React 高阶组件,和普通组件有什么区别,适用什么场景
  • 实现 sum 方法,使 sum(x)(y),sum(x,y)返回的结果相同
  • 两个对象如何比较
  • 说一下变量的作用域链
  • 介绍 dom 树对比
  • 如何设计状态树
  • native 提供了什么能力给 RN
  • 如何做工程上的优化
  • shouldComponentUpdate 是为了解决什么问题
  • 如何解决 props 层级过深的问题
  • 前端怎么做单元测试
  • pm2 怎么做进程管理,进程挂掉怎么处理
  • 不用 pm2 怎么做进程管理
  • jsonp 方案需要服务端怎么配合
  • Ajax 发生跨域要设置什么(前端)
  • 加上 CORS 之后从发起到请求正式成功的过程
  • Async 里面有多个 await 请求,可以怎么优化
  • React 遇到性能问题一般在哪个生命周期里解决
  • Vue 中一次性 200 条弹幕怎么处理
  • React/Redux 中哪些功能用到了哪些设计模式
  • JavaScript 变量类型分为几种,区别是什么
  • JavaScript 里垃圾回收机制是什么,常用的是哪种,怎么处理的
  • 一般怎么组织 CSS(Webpack)
  • 一个对象数组,每个子对象包含一个 id 和 name,React 如何渲染出全部的 name?在哪个生命周期里写?其中有几个 name 不存在,通过异步接口获取,如何做?渲染的时候 key 给什么值?可以使用 index 吗?用 id 好还是 index 好?
  • webpack 如何配 sass,需要配哪些 loader,配 css 需要哪些 loader
  • 如何配置把 js、css、html 单独打包成一个文件
  • 上下固定,中间滚动布局如何实现
  • ES5 和 ES6 有什么区别
  • 取数组的最大值(ES5、ES6)
  • some、every、find、filter、map、forEach 有什么区别
  • 页面上生成一万个 button,并且绑定事件,如何做(JS 原生操作 DOM)?循环绑定时的 index 是多少,为什么,怎么解决?
  • 页面上有一个 input,还有一个 p 标签,改变 input 后 p 标签就跟着变化,如何处理?监听 input 的哪个事件,在什么时候触发?
  • 手写数组去重函数(至少三种以上,说明时间复杂度)
  • Promise 和 async/await,和 Callback 有什么区别
  • componentWillReceiveProps 的触发条件是什么
  • Redux 怎么实现属性传递,介绍下原理
  • 网站 SEO 怎么处理
  • 403、301、302 是什么
  • HTTPS 怎么建立安全通道,Https 的加密过程
  • 项目中对于用户体验做过什么优化
  • 介绍下数字签名的原理
  • 前后端通信使用什么方案
  • RESTful 常用的 Method
  • Access-Control-Allow-Origin 在服务端哪里配置
  • 前端和后端怎么联调
  • 如何实现高度自适应
  • prototype 和proto区别
  • new 的实现原理,动手实现一个 new
  • 如何实现 H5 手机端的适配
  • em 和 px 的区别
  • Redux 状态管理器和变量挂载到 window 中有什么区别
  • webpack 和 gulp 的优缺点
  • 如何去除 url 中的#号
  • 如何实现分模块打包(多入口)
  • base64 为什么能提升性能,缺点
  • 介绍 webp 这个图片文件格式
  • 介绍 koa2,原理是什么?
  • 异步请求,低版本 fetch 如何低版本适配
  • ajax 如何处理跨域?CORSr 如何设置?
  • jsonp 为什么不支持 post 方法
  • 介绍 Immuable
  • 介绍 JS 全部数据类型,基本数据类型和引用数据类型的区别
  • Array 是 Object 类型吗
  • 说一下栈和堆的区别,垃圾回收时栈和堆的区别
  • 数组里面有 10 万个数据,取第一个元素和第 10 万个元素的时间相差多少
  • Async/Await 怎么实现
  • JavaScript 为什么要区分微任务和宏任务
  • Promise 构造函数是同步还是异步执行,then 呢
  • JavaScript 执行过程分为哪些阶段
  • 词法作用域和 this 的区别
  • loadsh 深拷贝实现原理
  • ES6 中 let 块作用域是怎么实现的
  • React 中 setState 后发生了什么?setState 为什么默认是异步?setState 什么时候是同步?
  • 为什么 3 大框架出现以后就出现很多 native(RN)框架(虚拟 DOM)
  • Webpack 打包时 Hash 码是怎么生成的?随机值存在一样的情况,如何避免?
  • Webpack 做了什么?使用 webpack 构建时有无做一些自定义操作?
  • node 接口转发有无做什么优化?node 起服务如何保证稳定性,平缓降级,重启等
  • RN 有没有做热加载?RN 遇到的兼容性问题?
  • RN 如何实现一个原生的组件?
  • RN 混原生和原生混 RN 有什么不同?
  • 介绍单页应用和多页应用?
  • RN 的原理,为什么可以同时在安卓和 IOS 端运行
  • 介绍一下网络的五层模型
  • 介绍 SSL 与 TLS
  • formData 和原生的 ajax 有什么区别
  • 介绍下表单提交,和 formData 有什么关系
  • rudux 和全局管理有什么区别
  • 介绍 MVP 怎么组织
  • promise 如何实现 then 处理,动手实现 then
  • 服务端怎么做统一的状态处理
  • 如何对相对路径引用进行优化
  • 介绍 node 文件查找优先级
  • npm2 和 npm3 有什么区别
  • 如何处理异常捕获
  • 项目如何管理模块
  • 尽可能多的写出判断数组的方法
  • 介绍 localstorage 的 api
  • html 标签 b 和 strong 的区别
  • 使用原型最大的好处
  • 介绍 React 设计思路,它的理念是什么?
  • 单例、工厂、观察者项目中实际场景
  • 添加原生事件不移除为什么会内存泄露,还有哪些地方会存在内存泄漏
  • setInterval 需要注意的点
  • 定时器为什么是不精确的
  • setTimeout(1)和 setTimeout(2)之间的区别
  • 介绍宏任务和微任务
  • promise 里面和 then 里面执行有什么区别
  • props 和 state 的区别
  • 介绍 class 和 ES5 的类以及区别
  • 介绍 defineProperty 方法,什么时候需要用到
  • for..in 和 object.keys 的区别
  • 使用闭包特权函数的使用场景
  • 哪些方法会触发 react 重新渲染?重新渲染 render 会做些什么?
  • state 和 props 触发更新的生命周期分别有什么区别?
  • React setState 是同步还是异步?
  • 对无状态组件的理解
  • 介绍箭头函数的 this
  • 找到前 K 个最大的元素
  • 对 React 的看法,它的优缺点,使用过程中遇到的问题,如何解决的
  • JavaScript 是什么范式语言
  • Promise 有没有解决异步的问题
  • Promise 和 setTimeout 的区别
  • 进程和线程的区别
  • 介绍下 DFS 深度优先
  • 按照调用实例,实现下面的 Person 方法
  • 请写出正确的执行结果
  • 请写出正确的执行结果
  • 请写出正确的执行结果
  • 请写出正确的执行结果
  • 请写出正确的执行结果
  • 请写出正确的执行结果
  • 请写出代码正确执行结果,并解释原因
  • 请写出正确的执行结果
  • 请写出正确的执行结果
  • 按要求完成代码
  • 请写出正确的执行结果
  • 请写出正确的执行结果
  • 请修改代码能跳出死循环
  • 修改代码不造成死循环
  • 请写出代码正确执行结果
  • 请写出代码正确执行结果
  • 计算以上字节每位 ✈️ 的起码点,并描述这些字节的起码点代表什么
  • 请写出代码正确执行结果,并解释原因
  • 请写出代码正确执行结果
  • 请写出代码正确执行结果,并解释原因
  • 请写出代码正确执行结果
  • 请写出代码正确执行结果,并解释原因
  • 请问当前 textarea 文本框展示的内容是什么?
  • 请写出代码正确执行结果
  • 请写出代码正确执行结果
  • 请写出代码正确执行结果,并解释为什么
  • 请手写实现一个拖拽
  • 请手动实现一个浅拷贝
  • 介绍 instanceof 原理,并手动实现
  • 请实现一个 JSON.stringfy
  • 请实现一个 JSON.parse
  • 说一下减少 dom 数量的办法?一次性给你大量的 dom 怎么优化?
  • vue hooks 有哪些
  • 介绍 Vue template 到 render 的过程
  • 为什么用 gulp 打包 node
  • Node 不支持哪些 ES6 语法
  • Webpack 为什么慢,如何进行优化
  • 请写出代码正确执行结果,并解释原因?
  • 请写出代码正确执行结果,并解释原因?
  • 请写出代码正确执行结果,并解释原因?
  • 请写出代码正确执行结果,并解释原因?
  • 请写出代码正确执行结果,并解释原因?
  • 请写出代码的正确执行结果,并解释原因?
  • 以下选项为 css 盒模型属性有哪些?(多选题)
  • 递归公式的时间复杂度为?(单选题)
  • 以下说法中对协议描述不正确的是?(单选题)
  • 以下哪些是 HTTP 请求中浏览器缓存机制会用到的协议头?(单选题)
  • 怎么定义 vue-router 的动态路由?怎么获取传过来的动态参数?
  • JavaScript 中如何模拟实现方法的重载
  • 请解释 JSONP 的工作原理
  • 用 html、css、js 模拟实现一个下拉框,使得下拉框在各个浏览器下的样式和行为完全一致,说出你的设计方案,并且重点说明功能设计时要考虑的因素。
  • 用 JavaScript 实现一个标准的排序算法(快排、冒泡、选择排序),对某个数字数组进行由低到高的排序。
  • 实现一个打点计时器
  • 下面关于 Vue 说法正确的是?(单选题)
  • JavaScript 写一个单例模式,可以具体到某一个场景
  • JavaScript 基本数据类型都有哪些?用 typeOf 判断分别显示什么?
  • 怎么判断引用类型数据,兼容判断原始类型数据呢?
  • 请写下你对协商缓存和强缓存的理解?
  • git pull -rebase 和 git pull 的区别是什么?
  • 说下盒模型的区别?介绍一下标准的 CSS 盒模型?border-box 和 content-box 有什么区别?
  • 给出页面的加载顺序
  • Html5 有哪些新特性?如何处理 Html5 新标签的浏览器兼容问题?如何区分 Html 和 Html5?
  • 找出“aaaabbcccdddd”字符串中出现最多的字母?
  • 概述异步编程模型
  • 在一个 ul 里有 10 个 li,实现点击对应的 li,输出对应的下标
  • 分别对以下数组进行去重,1:[1,'1',2,'2',3],2:[1,[1,2,3['1','2','3'],4],5,6]
  • 简述 JavaScript 中的函数的几种调用方式
  • 编写一个 Person 类,并创建两个不同的 Person 对象
  • 详细描述一个 http 请求从发起请求到收到响应的全部过程(越细越好)
  • 简述静态链接和动态链接的区别,并举例说明
  • 求 n 以内的所有素数,并说明时间复杂度
  • 手写实现 call
  • 手写实现 apply
  • 一个 dom 必须要操作几百次,该如何解决,如何优化?
  • 为什么要用 Vuex 或者 Redux,不要说为了保存状态
  • 为什么 Vue data 必须是函数
  • 页面埋点怎么实现
  • 除了 jsonp、postmessage 后端控制,怎么实现跨页面通讯
  • Vue data 中某一个属性的值发生改变后,视图会立即同步执行重新渲染吗?
  • Webpack 打包出来的体积太大,如何优化体积?
  • 缓存有哪些?前端缓存有哪些?怎么用?如何和后台配合
  • 说一下 let、const 的实现,动手实现一下
  • 简述 mixin、extends 的覆盖逻辑
  • Vue 子组件和父组件执行顺序
  • Dom tree 和 cssdom 是如何合并成 render tree 的
  • addEventListener 再 removeListener 会不会造成内存泄漏
  • scrollview 如何进行又能优化(例如 page=100 时,往上滚动)
  • 原生 JavaScript 获取 ul 中的第二个 li 里边的 p 标签的内容
  • 说下 offsetWith 和 clientWidth、offsetHeight 和 clientHeight 的区别,说说 offsetTop,offsetLeft,scrollWidth、scrollHeight 属性都是干啥的
  • Css 单位都有哪些?
  • Css 实现多列等高布局,要求元素实际占用的高度以多列中较高的为准
  • 一个标签的 class 样式的渲染顺序,id、class、标签、伪类的优先级
  • 写一个函数打乱一个数组,传入一个数组,返回一个打乱的新数组
  • 数组截取插入 splice,push 返回值,数组的栈方法、队列方法、排序方法、操作方法、迭代方法说一下
  • 判断一个变量的类型,写个方法用 Object.prototype.toString 判断传入数据的类型
  • 判断一个变量的类型,写个方法用 Object.prototype.toString 判断传入数据的类型?Object.prototype.toString.call(Symbol) 返回什么?
  • 对作用域和闭包的理解,解释下 let 和 const 的块级作用域
  • 以下代码输出什么?
  • switch case,case 具体是怎么比较的,哪些情况下会走到 default
  • 说下 typeof()各种类型的返回值?instanceof 呢?
  • if([] == 0), [1,2] == "1,2", if([]), [] == 0 具体是怎么对比的
  • 如何加快页面渲染速度,都有哪些方式
  • genertor 的实现原理
  • cdn 分布式部署,如果处理用户请求最近的资源
  • 说一下缓存有哪几种,具体都是怎么实现和比较的,缓存优先级,相互之间的对比
  • 使用 typescript 的优势有哪些
  • 说下你对浏览器缓存理解
  • css 如何实现动画
  • 判断是否是数组的方法
  • 给定一个二叉树,找出其最大深度。二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。说明: 叶子节点是指没有子节点的节点
  • 给定一个整数数组 nums,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和
  • 手写 EventEmitter 实现
  • Http 连接是如何复用的
  • 给出的两行代码为什么这么输出
  • 动画性能如何检测
  • 谈下淘宝和京东页面的实现
  • 平时都用到了哪些设计模式
  • 如何监控 MySql、Redis 性能
  • 对 service worker 的理解
  • Webpack 热更新的原理
  • Css 如何实现一个半圆
  • 一个活动项目里包含多个活动,Webpack 如何实现单独打包某个活动?
  • 单点登录实现原理
  • 尾递归实现
  • 有 1000 个 dom,需要更新其中的 100 个,如何操作才能减少 dom 的操作?
  • 商城的列表页跳转到商品的详情页,详情页数据接口很慢,前端可以怎么优化用户体验?
  • 多个 tab 只对应一个内容框,点击每个 tab 都会请求接口并渲染到内容框,怎么确保频繁点击 tab 但能够确保数据正常显示?
  • 301、302 的 https 被挟持怎么办?
  • 介绍 Http2 特性,Http2 怎么确保文件同时传输不会报错
  • 请实现鼠标点击页面中的任意标签,alert 该标签的名称(注意兼容性)
  • 完成一个表达式,验证用户输入是否是电子邮箱
  • 原生实现 ES5 的 Object.create()方法
  • 列举并解释一下 http 的所有请求方法,
  • 如何记录前端再用户浏览器上发生的错误并汇报给服务器?
  • 有哪几种方式可以解决跨域问题?(描述对应的原理)
  • 按要求完成题目
  • 你是如何组织 JavaScript 代码的?(可以从模块、组件、模式、编程思想等方面回答)
  • 移动 web 开发时如何调试?了解哪些多屏适配方案?
  • 算法考察:Next Permutation
  • 填充代码实现 template 方法
  • 请说明 Html 布局元素的分类有哪些?并描述每种布局元素的应用场景
  • 列举出在浏览器中,页面加载过程中发出了哪些事件?并画出这些事件的执行顺序?
  • 请描述下为什么页面需要做优化?并写出常用的页面优化实现方案?
  • 请画出 css 盒模型,基于盒模型的原理,说明相对定位、绝对定位、浮动实现样式是如何实现的?
  • 列举出 css 选择器有哪些分类,并至少写出三个 css 选择器之间的区别,适用场景
  • 请列出至少 5 个 JavaScript 常用的内置对象,说明用途
  • 请描述下 JavaScript 中 Scope、Closure、Prototype 概念,并说明 JavaScript 封装、继承实现原理。
  • 请列出目前主流的 JavaScript 模块化实现的技术有哪些?说出它们的区别?
  • 请列出 HTTP/1.1 协议 Response 状态码:20x、30x、40x、50x 等各区间的含义,并说明 Action 在 Restful API 中分别使用哪些 Http 副词(action)表现出 CRUD?
  • 请说明 JavaScript 进行压缩、合并、打包实现的原理是什么?为什么需要压缩、合并、打包?分别列出一种常用工具或插件
  • 请说出前端框架设计模式(MVVM 或 MVP 又或 MVC)的含义以及原理
  • 请用 JavaScript 代码实现事件代理
  • 实现格式化输出,比如输入 999999999,输出 999,999,999
  • 使用 JavaScript 实现 cookie 的设置、读取、删除
  • 请编写一个 JavaScript 函数 parseQueryString,它的用途是把 URL 参数解析为一个对象,url="http://iauto360.cn/index.php?key0=0&key1=1&key2=2"
  • node 如何进行跨域通信
  • Vuex 和 localStorage 的区别
  • 如何实现 a,b 两个变量的交换
  • Vue 双向绑定原理
  • 开发环境热更新的优化方式
  • 给 JavaScript 的 String 原生对象添加一个名为 trim 的原型方法,用于截取字符串前后的空白字符
  • 按要求实现代码
  • 说一下路由钩子在 Vue 生命周期的体现?
  • 计算属性和普通属性的区别
  • 描述下自定义指令(你是怎么用自定义指令的)
  • 说一下 Vue 中所有带$的方法
  • catch-control 有哪些设定值
  • AMD 和 CMD 有哪些区别?
  • 微任务和宏任务的区别
  • 你是怎么配置开发环境的?
  • 列举 3 种强制类型转换和 2 种隐式类型转换
  • 小程序里面打开页面最多多少,生命周期、常用的 api 列举几个?
  • Vue-router 除了 router-link 怎么实现跳转
  • 原生 JavaScript 实现图片懒加载的思路
  • 回调函数和任务队列的区别
  • 如何实现 webpack 持久化缓存
  • 找出两个数组的交集元素
  • Css 实现 div 宽度自适应,宽高保持等比缩放
  • ul 内部除最后一个 li 以外设置右边框效果
  • flex:1 的完整写法是?分别是什么意思?
  • 写出下面代码的输出结果
  • 用 typescript 实现函数 caller,接收一个函数作为第一个参数,其返回参数类型由接收的函数参数决定
  • 有这样一个函数 A,要求在不改变原有函数 A 功能以及调用方式的情况下,使得每次调用该函数都能在控制台打印出“HelloWorld”
  • 在浏览器执行以下代码,写出打印结果
  • 输入一个整数,输出该数二进制表示中 1 的个数
  • 行内元素和块级元素有什么区别
  • link 和@inmport 区别
  • ⽤ js 实现随机选取 10–100 之间的 10 个且不重复的数字,存⼊⼀个数组,还要排序
  • 请写出弹出值,并解释为什么?
  • 写出输出值,并解释为什么
  • 请写出代码执⾏结果,并解释为什么
  • 请写出代码执⾏结果,并解释为什么
  • 给定⼀个⼤⼩为 n 的数组,找到其中的众数。众数是指在数组中出现次数⼤于 ⌊⌊ n/2 ⌋⌋ 的元素
  • HTTP2.0的多路复⽤和HTTP1.X中的⻓连接复⽤有什么区别?
  • HTTP2.0多路复⽤有多好?
  • React兄弟组件的通信方式?(需回答两种以上)
  • Fiber算法原理,相比之前的stack算法哪些方面做了优化?
  • 如何实现双向绑定,并抽象成公共组件
  • 原生实现addClass,用多种方法
  • 实现一个倒计时,setInterval实现的话,如何消除时间误差
  • React ***实现过程?原理是什么?有什么注意事项?
  • Node性能如何进监控以及优化?
  • http请求由什么组成?
  • 屏幕正中间有个元素A,元素A中有文字A,随着屏幕宽度的增加,始终需要满足下列条件
  • 函数中的arguments是数组吗?若不是,如何将它转化为真正的数组?
  • 请写出以下代码的打印结果
  • 以最小的改动解决以下代码的错误(可以使用ES6)
  • 实现Function 原型的bind方法,使得以下程序最后能输出“success”

 

标签:区别,实现,前端,哪些,如何,写出,面试,题库,什么
来源: https://blog.51cto.com/u_15166492/2713648

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有