![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
前端面试题
卡夫卡14
这个作者很懒,什么都没留下…
展开
-
[高级前端进阶] 第18题:React 中 setState 什么时候是同步的,什么时候是异步的
注意: setState的“异步”并不是说内部由异步代码实现,其实本身执行的过程和代码都是同步的,只是合成事件和钩子函数的调用顺序在更新之前,导致在合成事件和钩子函数中没法立马拿到更新后的值,形式了所谓的“异步”,当然可以通过第二个参数 setState(partialState, callback) 中的callback拿到更新后的结果。 在React中,如果是由React引发的事件处理(比如通过onClick引发的事件处理),调用setState不会同步更新this.state,除此之外的setSta转载 2020-08-18 16:07:46 · 336 阅读 · 0 评论 -
[高级前端进阶] 第3题:什么是防抖和节流?有什么区别?如何实现?
写得比较好的答案: 函数节流与函数防抖转载 2020-08-18 14:19:04 · 226 阅读 · 0 评论 -
[高级前端进阶] 第2题:[‘1‘, ‘2‘, ‘3‘].map(parseInt) what & why ?
[‘1’, ‘2’, ‘3’].map(parseInt) what & why ? 这是今天在 Advanced-Frontend组织 看到一个比较有意思的题目。 主要是讲JS的映射与解析 早在 2013年, 加里·伯恩哈德就在微博上发布了以下代码段: ['10','10','10','10','10'].map(parseInt); // [10, NaN, 2, 3, 4] parseInt parseInt() 函数解析一个字符串参数,并返回一个指定基数的整数 (数学系统的基础)。 con转载 2020-08-17 17:37:08 · 117 阅读 · 0 评论 -
[高级前端进阶] 第 1 题:写 React / Vue 项目时为什么要在列表组件中写 key,其作用是什么?
key的作用就是更新组件时判断两个节点是否相同。相同就复用,不相同就删除旧的创建新的 因为不带key时节点能够复用,省去了销毁/创建组件的开销,同时只需要修改DOM文本内容而不是移除/添加节点,这就是文档中所说的“刻意依赖默认行为以获取性能上的提升”。 既然如此,为什么还要建议带key呢? 因为这种模式只适用于渲染简单的无状态组件。 对于大多数场景来说,列表组件都有自己的状态。 举个例子:一个新闻列表,可点击列表项来将其标记为"已访问",可通过tab切换“娱乐新闻”或是“社会新闻”。 不带key属性的情况下转载 2020-08-17 17:05:47 · 181 阅读 · 0 评论