滴滴前端面经(转载)

JavaScript

jsjs 基本数据类型
varvar,letlet,constconst 区别
promisepromise 的实现原理
asyncasync 和 awaitawait 的场景题
generatorgenerator 了解吗
ES5ES5 继承和 ES6ES6 继承的区别
ES6ES6 中的继承有什么好处
箭头函数能不能做构造函数,为什么
nullnull 和 undefinedundefined 区别
typeoftypeof 和 instanceofinstanceof 区别
instanceofinstanceof 的原理和弊端
es6es6 中 mapmap 和 setset 方法有什么不同?
null > 0, null < 0, null >= 0, null <= 0, null == 0 分别输出什么?
jsjs 的类型转换
prototypeprototype 是啥,什么是原型,什么是实例原型,说说你的理解
jsjs 为什么不支持多继承
异步操作你知道哪些?PromisePromise 中回调函数是同步的还是异步的?thenthen 的链式调用是同步的还是异步的?
jsjs 事件循环过程是什么样的?它为什么会分为宏任务和微任务?

css

blockblock、inlineinline 和 inline-blockinline−block 的元素有什么差别
display:flex 下水平垂直居中怎么实现
flex: 1 和 flex: 0.1 各会呈现什么样的状态
弹性布局,说说你常用的属性
实现两栏布局,左边固定右边自适应
实现两栏布局,左右固定,设置两栏分别居于屏幕左右两侧
给一个图片,只知道 urlurl,实现图片铺满和居中
实现一个自适应的正方形
bfcbfc,flexflex,CSSCSS 选择器

html

htmlhtml 语义化标签
htmlhtml 中的块级元素、行内元素分别有哪些
异步加载 scriptscript 的 jsjs 代码
html5html5 新增元素

DOM

回流和重绘
dom2dom2 和 dom3dom3 的区别
网络
常用的 headerheader
304304 状态码的过程
httphttp 和 httpshttps 的区别,以及 httpshttps 建立链接的过程
跨域的解决方案有哪几种?说一下 jsonpjsonp 的工作原理
讲一下 TCPTCP 三次握手,四次挥手
讲一讲 ssrssr、http2.0http2.0、cdncdn

小程序

介绍下自己的项目
在微信小程序中有一个列表页,点击添加可以跳转到一个表单页,填写表单点击提交后返回列表页列表刷新,点击返回或者滑动返回列表不刷新,问如何实现
说说 wx.navigateTowx.navigateTo 可以包含的参数
说说 slotslot,为什么要用,有什么好处

Vue

响应式数据源码、vuevue 的虚拟 domdom 源码
组件通信用了哪些方法
如果页面上有很多个 checkboxcheckbox 怎么尽可能少的向后台传输数据

React

diffdiff 算法有了解吗?它是怎么工作的?为什么它是操作虚拟 DOMDOM?
列表组件的 keykey 可以使用 indexindex 吗?
讲一下 useState 和 useRef?useState 它是怎么实现的?setState 函数是怎么实现状态更改的?

Webpack

听过 happyPack 这个工具吗?

性能优化

前端优化有哪些方案?
CommonJSCommonJS 等模块化工具?

手写题目

数字划分:输入 1234987897 输出 1,234,987,897
正则:输入xxxxxxx{xxx}xxx{xx}将括号里面的替换成具体的值,当然不用正则也可以完成
手写防抖和节流
输出素数
jsjs 继承
手写深拷贝
问 nn 个苹果放在 mm 个盘子里面有多少种方式
手撕洗牌算法
手写快速排序

最后关于前端面试的算法题

可以参考一下下方的文章, 真的特别好, 博主也正在学习
https://leetcode-cn.com/circle/discuss/SVKmhR/

作者:腐烂的橘子
链接:https://leetcode-cn.com/circle/discuss/3vHCzp/
来源:力扣(LeetCode)
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值