首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何整理自己的前端面试题库_2023-02-28

需要使用缓存协商,先与服务器确认返回的响应是否被更改,如果之前的响应中存在ETag,那么请求的时候会与服务端验证,如果资源未被更改,则可以避免重新下载 no-store:直接禁止游览器缓存数据,每次用户请求该资源...其clear()方法已经被弃用,所以可以通过创建一个的WeakMap并替换原对象来实现清除。 WeakMap的设计目的在于,有时想在某个对象上面存放一些数据,但是这会形成对于这个对象的引用。...总结: Map 数据结构。它类似于对象,也是键值对的集合,但是“键”的范围不限于字符串,各种类型的(包括对象)都可以当作键。 WeakMap 结构与 Map 结构类似,也是用于生成键值对的集合。...(3)避免使用通配规则,如*{}计算次数惊人,只对需要用到的元素进行选择。 (4)尽量少的去对标签进行选择,而是用class。 (5)尽量少的去使用后代选择器,降低选择器的权重。...渲染性能: (1)慎重使用高性能属性:浮动、定位。 (2)尽量减少页面重排、重绘。 (3)去除规则:{}。规则的产生原因一般来说是为了预留样式。去除这些规则无疑能减少css文档体积。

1.3K50
您找到你想要的搜索结果了吗?
是的
没有找到

React Native开发之React基础

演示 组件的属性(props) 我们可以通过this.props.xx的形式获取组件对象的属性,对象的属性可以任意定义,但要避免与JavaScript关键字冲突。...React.Children.map React.Children.map(children, function[(thisArg)]) 在包含在 children 里的每个子级上调用函数,调用的函数的...如果 children 是一个嵌套的对象或数组,它将被遍历。如果 children 是 null 或 undefined ,返回 null 或 undefined 而不是一个数组。...有时,我们需要一种机制,验证别人使用组件时,提供的参数是否符合要求。 组件类的PropTypes属性,就是用来验证组件实例的属性是否符合要求。...心得:ref属性在开发中使用频率很高,使用它你可以获取到任何你想要获取的组件的对象,有了这个对象你就可以灵活地做很多事情,比如:读写对象的变量,甚至调用对象的函数。

1.9K20

前端客户端性能优化实践

当依赖项数组为时,useCallback会在组件的初始渲染时创建函数,并在后续的渲染中重复使用同一个函数。...这样做的好处是,当依赖数组中的没有发生变化时,可以避免重复计算tooltip的,提高组件的性能。...props解构变量时的默认在这段代码中,KnowledgeTab是一个使用React.memo进行优化的组件。...React.memo是一个高阶组件,用于对组件进行浅层比较,确定是否需要重新渲染组件。当组件的props没有发生变化时,React.memo会返回之前渲染的结果,从而避免不必要的重新渲染。...而使用useMemo创建一个数组作为默认,可以保证在父组件重新渲染时,knowledge_list_default的引用不会发生变化,从而避免不必要的重新渲染。

27600

React学习笔记(二)—— JSX、组件与生命周期

JSX列表渲染 1.4.1、map函数 map()方法定义在JavaScript的Array中,它返回一个新的数组,数组中的元素为原始数组调用函数处理后的。...当前元素的的。 index:可选。当前元素的索引。 arr:可选。当前元素属于的数组对象。 thisValue:可选。对象作为该执行回调时使用,传递给函数,用作"this"的。...); React.createElement() 会预先执行一些检查,帮助你编写无错代码,但实际上它创建了一个这样的对象: // 注意:这是简化过的结构 const element = { type...//验证器用来验证数组或对象的每个验证器的前两个参数是数组或对象本身,还有对应的key。...,使用得当将大大提高React组件的性能,避免不需要的渲染。

5.5K20

React Native之React速学教程(上)

What’s React React是一个用于组建用户界面的JavaScript库,让你更简单的方式来创建交互式用户界面。 当数据改变时,React将高效的更新和渲染需要更新的组件。...组件的属性(props) 我们可以通过this.props.xx的形式获取组件对象的属性,对象的属性可以任意定义,但要避免与JavaScript关键字冲突。...React.Children.map array React.Children.map(object children, function fn [, object thisArg]) 该方法会返回一个...有时,我们需要一种机制,验证别人使用组件时,提供的参数是否符合要求。 组件类的PropTypes属性,就是用来验证组件实例的属性是否符合要求。...心得:ref属性在开发中使用频率很高,使用它你可以获取到任何你想要获取的组件的对象,有个这个对象你就可以灵活地做很多事情,比如:读写对象的变量,甚至调用对象的函数。

2.4K80

不要再滥用可选链运算符(?.)啦!

name ↑ 不管对象以及属性有没有可能是,无脑加上?.就完了。 // react class component const name = this.state?....name // react hooks const [items, setItems] = useState([]) items?.map(...) setItems?....避免盲目用,滥用,有个点儿就加问号,特别是在一个比较长的链式代码里每个属性后面都加。 只有可能是,而且业务逻辑中有空的情况,就用;其它情况尽量不要用。...首先在使用的时候得想下,问号前面的变量或属性,有没有可能是: 很明显不可能是,比如 React类组件里的 this.state this.props,不要用; 自己定义的变量或属性,而且没有赋值为情况...“正确用法”: 避免盲目用,滥用,有个点儿就加问号,特别是在一个比较长的链式代码里每个属性后面都加。 只有可能是,而且业务逻辑中有空的情况,就用;其它情况尽量不要用。

25240

40道ReactJS 面试问题及答案

useContext() 挂钩用于使用功能组件内的上下文数据。它将上下文对象作为参数并返回当前上下文。...通过这样做,我们可以避免由于 setState() 的异步特性而导致用户在访问时获取旧状态的问题。...事件对象: 在 HTML 中,事件对象会自动传递给事件处理函数。 在 React 中,事件对象也会自动传递给事件处理函数,但 React 会规范化事件对象确保不同浏览器之间的行为一致。...安全通信:使用 TLS/SSL 等安全通信协议在客户端和服务器之间传输敏感数据。避免通过不安全的渠道纯文本形式发送敏感信息。...保护敏感数据:避免在客户端代码或本地存储中存储密码或 API 密钥等敏感数据。相反,应将敏感数据安全地存储在服务器上,并使用安全的身份验证机制来访问它。

18510

不要再滥用可选链运算符(?.)啦!

name ↑ 不管对象以及属性有没有可能是,无脑加上?.就完了。 // react class component const name = this.state?....name // react hooks const [items, setItems] = useState([]) items?.map(...) setItems?....避免盲目用,滥用,有个点儿就加问号,特别是在一个比较长的链式代码里每个属性后面都加。 只有可能是,而且业务逻辑中有空的情况,就用;其它情况尽量不要用。...首先在使用的时候得想下,问号前面的变量或属性,有没有可能是: 很明显不可能是,比如 React类组件里的 this.state this.props,不要用; 自己定义的变量或属性,而且没有赋值为情况...“正确用法”: 避免盲目用,滥用,有个点儿就加问号,特别是在一个比较长的链式代码里每个属性后面都加。 只有可能是,而且业务逻辑中有空的情况,就用;其它情况尽量不要用。

24220

使用 useState 需要注意的 5 个问题

值得庆幸的是,React hook 的形式提供了几个用于状态管理的内置解决方案,这使得 React 中的状态管理更加容易。...使用不同的数据类型(如状态或)初始化 useState 将导致空白页错误,如下所示。...例如,一个对象,如下所示,可以传递给状态: import { useState } from "react"; function App() { // 使用期望的数据类型初始化状态 const...然而,这个解决方案很混乱,因为它需要对每个对象链进行多次检查。 使用可选的链接操作符(?.),你可以读取深埋在相关对象链中的属性,而不需要验证每个引用的对象是否有效。可选的链接操作符(?.)...希望这些有用的 useState 实践能够帮助你在构建 React 驱动的应用程序时使用 useState hook 避免这些潜在的错误。

4.9K20

React Hooks - 缓存记忆

React Hooks几乎在所有方面都能让我们在编程中获得好处。但是某些时候的性能问题,也需要使用一些技巧来解决。我们可以使用Hooks编写快速的应用程序,但是在动手之前需要注意一两件事。...如果您的函数组件在相同的Props属性下呈现相同的结果,React将会使用缓存,跳过这次渲染,并重用最后一次渲染的结果。 默认情况下,它将仅对props对象中的复杂对象进行浅层比较。...简单的缓存记忆 const List = React.memo(({ items }) => { console.log('renderList'); return items.map((item...useReducer vs useState useReducer更适用于管理包含多个子组件的状态对象,或者下一个状态取决于前一个时。...使用useReducer的常见模式是与useContext一起使用,以避免在大型组件树中显式传递回调。

3.5K10

关于前端面试你需要知道的知识点

如何在 ReactJS 的 Props上应用验证? 当应用程序在开发模式下运行时,React 将自动检查咱们在组件上设置的所有 props,确保它们具有正确的数据类型。...React-intl提供了两种使用方法,一种是引用React组件,另一种是直接调取API,官方更加推荐在React项目中使用前者,只有在无法使用React组件的地方,才应该调用框架提供的API。...1,在变化后数组里找到的key=id0的也是1 因为子元素相同,就不删除并更新,只做移动操作,这就提升了性能 参考:前端react面试题详细解答 React的严格模式如何使用,有什么用处?...会立即退出第一次渲染并用更新后的 state 重新运行组件以避免耗费太多性能。...,把他们合并在一起形成一个新的 单一对象,并用这个单一的对象去做setState的事情,就像Object.assign的对象合并,后一个 key会覆盖前面的key 经过React 处理的事件是不会同步更新

5.4K30
领券