前端面试合集
文章平均质量分 55
前端面试合集
Zarek⠀
用自律换自由
展开
-
bind、call、apply 区别和实现
bind、call、apply 区别 call 和 apply 都是为了解决改变 this 的指向。作用都是相同的,只是传参的方式不同。 除了第一个参数外,call 可以接收一个参数列表,apply 只接受一个参数数组 let a = { value: 1 } function getValue(name, age) { console.log(name) console.log(age) console.log(this.value) } getValue.ca原创 2021-10-12 14:38:13 · 189 阅读 · 0 评论 -
谈谈js的变量提升
谈谈js的变量提升 当执行 JS 代码时,会生成执行环境,只要代码不是写在函数中的,就是在全局执行环境中,函数中的代码会产生函数执行环境,只此两种执行环境。 b() // call b console.log(a) // undefined var a = 'Hello world' function b() { console.log('call b') } 想必以上的输出大家肯定都已经明白了,这是因为函数和变量提升的原因。通常提升的解释是说将声明的代码移动到了顶部,这其实没有什么错误,便于原创 2021-10-12 12:00:00 · 128 阅读 · 0 评论 -
大厂面试必备——React相关面试题
1、React 中 keys 的作用是什么? Keys是 React 用于追踪列表中哪些元素被修改、被添加或者被移除的辅助标识 在开发过程中,我们需要保证某个元素的 key 在其同级元素中具有唯一性。在 React Diff 算法中React 会借助元素的 Key 值来判断该元素是新近创建的还是被移动而来的元素,从而减少不必要的元素回流。此外,React 还需要借助 Key 值来判断元素与本地状态的关联关系,因此我们绝不可忽视转换函数中 Key 的重要性 2、传入 setState 函数的第二个参数的作原创 2021-10-11 14:16:30 · 804 阅读 · 0 评论 -
元素垂直居中方案——看这一篇就够了!
前端面试常考知识点之元素垂直居中方案原创 2021-10-14 12:00:00 · 164 阅读 · 0 评论 -
前端面试高频手写题目
高频手写题目 面试高频手写题目 1 实现防抖函数(debounce) 防抖函数原理:在事件被触发n秒后再执行回调,如果在这n秒内又被触发,则重新计时 手写简化版: // func是用户传入需要防抖的函数 // wait是等待时间 const debounce = (func, wait = 50) => { // 缓存一个定时器id let timer = 0 // 这里返回的函数是每次用户实际调用的防抖函数 // 如果已经设定过定时器了就清空上一次的定时器 // 开始一个新的定时原创 2021-10-11 11:11:33 · 471 阅读 · 0 评论