前端场景题/解决方案
# 前端场景题/解决方案
图片懒加载实现
一万条数据怎么渲染
接口防刷
无感刷新 token 是怎么实现的?
让你来实现一个扫码支付的功能你会怎么实现?
如何设计实现一个渲染引擎
如何实现上拉加载,下拉刷新?
如何在移动端实现 1 px 的线;
icon 图片怎么引入
一个网页从请求到呈现花了很长时间,如何排查
React、Vue 和 JQuery 在什么场景下怎么选型
iOS 下软键盘输入框遮挡遇到过问题么?怎么解决顶不起来的问题?
怎么从十万个节点中找到想要的节点,怎么快速在某个节点前插入一个节点?
有一个一亿长度的字符串,怎么存储设计可以让它更好去查询、修改?
怎么用原生 js 实现一个轮播图,以及滚动滑动
怎么实现上传下载的功能
怎么计算在一个页面上的停留时间
给你一亿个数,是连续的,怎么找出两个不存在的数(BitMap)
H5 页面中长列表在下拉过程中为什么会闪一下 ,如何解决?
支付宝扫码的过程发生了什么?想像一下实现?
前端给页面加水印,说说各种编码的特点,说说数字签名的特点
实现协同编辑,说说你认为的技术关键点
实现广告曝光率的统计,要求如下:
(1)区分为资源没加载的情况下流失的用户
(2)统计用户累计在广告位浏览时间
(3)统计广告位展示比例不同的情况下的用户比例
如何监听线上页面内存溢出?
页面报错监听,考虑异步的情况(其实就是设计一套通用的报错监控方案)
有没有了解过拖拽?觉得它有哪些难点?
移动端事件 touch 与 PC 上的 click 有什么区别?touch 会遇到什么问题?
换肤都做过什么处理,有没有处理过可能改变尺寸的换肤
如果让你实现一个计算器,都需要考虑哪些问题
国际化方案是如何做的
写一个发布订阅模式的 on/emit/off
7.1 如果需要把订阅者执行成功和失败的方法分开,需要怎么做
7.2 如果希望失败的可追溯,找到是哪个订阅者的报错,需要怎么做
7.3 实现一下 before 和 after 方法,可以添加一些前置的和后置的订阅者
7.4 现在希望给所有的订阅者加打点上报的功能,并且提供全局的开关,需要如何设计
7.5 如果需要给某一个订阅者单独加一个打点,需要如何设计如果想给一个对象上的所有方法在执行时加一些打点上报的功能,如何做
假如一个页面 onload 了,用户点击页面的按钮的时候并发请求了三个请求,此时 浏览器与服务器建立多少个什么连接...
怎么设计一个动态配置化表单?哪些场景使用?
如何高效地从 1000 个 div 中删除 10 个 div
60 个请求(限制最多同时请求 6 个)请求并行方案
原生拖拽方案及实现细节(mouseMove、drag,drop)
如何设计一个本地存储的包 提供给其他同事用, 思路、实现细节
有 50g 的 QQ 号数据,一次只能运行 20g,想要找出出现次数最多的前十个 qq 号,怎么做?
发送验证码功能,向同一个手机发送多次验证码(攻击),怎么处理
很大的日志读取,ip 出现最多的十次,怎么分片
海量日志中找 ip 最多出现次数,超大的日志文件, 提取其中的 IP 地址
前后端通信数据格式
富文本编辑器怎么实现?(给标签设置 contenteditable 属性,然后使用浏览器支持的 document.execCommand 命令模式 API)
富文本编辑器的安全问题
如果要实现在离线情况下编辑且不丢失数据,怎么办?(先回答的是使用 localStorage,回答之后不断追问,还问了能否直接用对象存,后面扯到了引擎方面的问题。)
微信附近的人这个功能,如何设计
如何实现一个可编辑的可以无限延伸的表格?
前端要加载一个图片有哪些方式,然后还问到了 base64 是怎么实现的,有什么缺点,icon 是怎么实现的
假如说我们的网页有一个表单,有人模拟 http 的 post 绕过了表单将数据发送到了后台应该怎么办
权限控制做过吗,页面级还是控件级,怎么实现的
vue 中如何渲染用户想要的自定义文本,比如有各种颜色,各种字体大小(类似于用 vue 实现一个文本编辑器)
# 登陆注册问题
设计一个 sso 单点登录
- 扫码登录怎么做,手机端和 PC 端都要建立长连接吗?
让你设计一个登录、注册、忘记密码的页面你会怎么设计?
说一下 token 和 cookie 登录的区别
登录功能,从前端到后台是怎么处理的
登录你是怎么做的?token 怎么存,如果要让登录状态在新的 tab 页面保持,你怎么做?
浏览器保存用户账号密码的原理是什么?
# 前端布局问题
如何实现两栏布局,右侧自适应?三栏布局中间自适应呢?
什么是响应式设计?响应式设计的基本原理是什么?如何做?
怎么实现一个响应式布局?
移动端的适配方法?
移动端适配是用 rem 还是 vw?分别的原理是什么?你们用什么方案?
- 实现一个类似微信聊天列表页的布局,有如下需求
- 有一个吸顶的栏,内部的内容不需要实现
- 一个吸底部的按钮栏,内部有四个按钮,按钮功能不需要做,只需要实现布局
- 中间的列表可滚动
# 前端兼容问题
移动端兼容性问题遇到过哪些
客户端提供 API 版本不一致这类兼容性问题你是如何做的处理
# 文件上传
- 文件上传的二进制具体是怎么处理的
大文件上传如何做断点续传?
大型文件传输,前后端分别怎么处理,数据流上的具体操作
秒传、分片传输、断点传输的具体实现和细节
# 前端动画
- 如何实现一张图片绕着鼠标旋转的效果
如何使一张图片随着鼠标移动
如何使一张图片以固定的半径绕着一个点旋转
如何实现一个进度条动画?
移动端如何实现下拉到底部 跟随移动 结束后回弹的动画?
css 和 js 两种方式实现 div 右移 1000px 动画
# 组件库
如何发布一个 npm 包?设计开发一个 UI 库怎么打包?如何按需加载?babel-import-plugin 原理是啥?es5 引入和 es6 引入有什么区别?如何进行 tree-shaking, 是哪个 plugin 进行的?es moduleh 和 Commonjs 的区别?
- 组件库如何做按需加载
做过哪些公共组件?DatePicker 怎么实现的?难点在哪里?
组件封装有哪些原则?
组件数据和 UI 怎么分离?
如何开发一个 tree 组件,思路,注意的点
- 如何开发一个 select 组件 ,类似百度输入框功能,需要考虑的点有哪些
element 表格组件的实现
- 如果需要你实现一个弹幕的组件,你需要如何设计这个组件的 props 和 state,内部如何实现,有哪些地方可以优化
说一下,实现一个 toast(提示框)函数的大致思路
现在要你完成一个 Dialog 组件,说说你设计的思路?它应该有什么功能?
组件升级怎么让使用这个组件的人都知道。
如果让你设计项目自动设计组件升级,并且安全,你会怎么去设计
写一个翻页的插件需要哪些注意的参数? 。。。