- 博客(43)
- 收藏
- 关注
原创 React.memo()、userMemo 、 userCallbank的区别及使用
useMemo和useCallback十分相似,useCallback用来缓存函数对象,useMemo用来缓存函数的执行结果。换言之,A组件无论如何渲染,每次渲染的结果都是相同的,虽然重渲染并不会应用到真实DOM上,但很显然这种渲染是完全没有必要的。执行后返回执行结果,如果依赖项不发生变化,则一直会返回上次的结果,不会再执行函数。这是因为App组件重新渲染的时候,clickHandler也重新创建了,这时传递给子组件的clickHandler和上一次不一样,所以react.memo失效了。
2023-06-04 21:41:29
1252
原创 Redux And Redux Toolkit
react_redux只介绍了原理图,为理解redux_toolkit做铺垫。本笔记是对一下课程做的输出,若大家有不理解的地方,可看完课程后,再借助课程理解笔记内容,同时也鼓励大家对自己的听课的内容进行输出,帮助自己二次回顾。
2023-06-04 20:42:23
685
原创 fetch: 原生函数
特点fetch: 原生函数,不再使用XmlHttpRequest对象提交ajax请求 老版本浏览器可能不支持 不用下载,自带。相关APIGet请求fetch(url).then(function(response){returnresponse.json()}).then(function(data){console.log(data)}).catch(function(e){console.log(e)});Post请求......
2022-07-18 18:33:17
242
原创 经典面试题| react/vue中的key有什么作用?(key的内部原理是什么? 为什么遍历列表时,key最好不要用index?
经典面试题:1. 虚拟DOM中key的作用:(1)简单的说: key是虚拟DOM对象的标识, 在更新显示时key起着极其重要的作用。(2)详细的说: 当状态中的数据发生变化时,react会根据【新数据】生成【新的虚拟DOM】, 随后React进行【新虚拟DOM】与【旧虚拟DOM】的diff比较,比较规则如下: a. 旧虚拟DOM中找到了与新虚拟DOM相同的key: (1).若虚拟DOM中内容没变, 直接使用之前的真实DOM (2).若虚拟DOM中
2022-06-20 10:05:16
217
原创 牛客-js练习|错题本+知识点总结-break、try...catch...finally(01)
牛客-js练习|错题本+知识点总结:break 、try...crach...finally
2022-06-07 12:16:48
615
原创 Route.post() requires a callback function but got a [object Undefined]
Route.post() requires a callback function but got a [object Undefined]
2022-05-08 22:33:33
3049
原创 ES6面试问题汇总
ES6有哪些新增方法?/你了解哪些ES6方法?(总问题)块级作用域、模板字符串、解构赋值、箭头函数、函数默认参数、剩余参数&运算符、set和map、import和exprot用法、promiseasyn和awit函数
2022-04-24 19:03:50
6671
2
原创 什么是:arguments
1.arguments是一个类数组对象,它也可以通过索引来操作数据,也可以获取长度2.我们即使不定义形参,也可以通过arguments来使用实参,3.它里边有一个属性叫做callee
2022-04-12 14:53:23
2280
原创 call( )和apply( )的相同点和区别
call( )和apply()相同点----这两个方法都是函数对象的方法,需要通过函数对象来调用----当对函数调用call( )和apply( )都会调用函数执行----在调用call( )和app1y( )可以将一个对象指定为第一个参数 此时这个对象将会成为函数执行时的this区别---- call( )方法可以将实参在对象之后依次传递---- apply( )方法需要将实参封装到-一个数组中统一传递相同点注:fun 是 函数...
2022-04-12 12:01:09
349
原创 React路由和react-router-dom相关API
5.1. 相关理解5.1.1. SPA的理解1.单页Web应用(single page web application,SPA)。2.整个应用只有一个完整的页面。3.点击页面中的链接不会刷新页面,只会做页面的局部更新。4.数据都需要通过ajax请求获取, 并在前端异步展现。5.1.2. 路由的理解1.什么是路由?1.一个路由就是一个映射关系(key:value)2.key为路径, value可能是function或component
2022-04-12 11:11:25
434
原创 构造函数作用及使用
构造函数的作用:构造函数的最大作用就是创建对象时完成初始化,当我们在new一个对象并传入参数的时候,会自动调用构造函数并完成参数的初始化。
2022-04-08 15:34:37
5664
原创 力扣:删除有序数组中的重复项(简单)
力扣:删除有序数组中的重复项(简单)解题思路:1.nums[ i ]原数组 nums [ j ]新数组2.两层for循环,固定第一个数,用第二个数和第一个数对比,相等则删除splice() , 同时j--,不等则将第一个与第三个相比3.j-- 为新数组的长度
2022-04-01 16:55:00
357
原创 冒泡排序(带图解)
给出一个数组 arr = [5,4, 3, 2, 1] 冒泡排序升序排序先找出规律, <script> var arr = [7, 6, 9, 4, 2] for (var i = 0; i <= arr.length - 1; i++) {// 第一步:外层循环管趟数 for (var j = 0; j <= arr.length - i - 1; j++) { // 第二步:里层循环管次数
2022-04-01 16:51:33
617
原创 React旧生命周期---主要知识点
React旧生命周期话不多说,先上图画蓝色对号的是在react新生命周期中将要摒弃的;componentWillMount() componentWillReceiveProps() componentWillUpdate()画红色框的是react生命周期中常用到的周期,也是以后工作后会常用到的生命周期;...
2022-03-31 11:56:58
814
原创 display:none和visibility:hidden区别?
display:none和visibility:hidden区别1.占位 2.重绘和渲染
2022-03-19 11:06:59
423
原创 String和toString区别?
JavaScript中String()和.toString()都可以将数据转化为字符串类型,但是String()与.toString()还是存在一些区别1.String可以将所有的数据都转化为字符串,但是.toString()不能对null和undefined进行转换例题一:使用String()和.toString()对false进行转换<script> var str1 = false.toString(); var str2 = String(flase); c
2022-03-12 22:27:58
2244
原创 函数的调用方式不同时,this的指向什么
1.通过函数名()直接调用的:this指向window2.通过对象.函数名()调用的:this指向这个对象;3.函数作为数组的一个元素,通过数组下标调用的:this指向这个数组4.函数作为构造函数,用new关键字调用时:this指向的是new出的新对象5.通过函数指定,用apply()、call()、bind()方法指定this...
2022-03-03 22:32:37
264
原创 js中 { } [ ] ()的具体区
1.{ }大括号,表示定义一个对象,大部分情况下要有成对的属性和值,或是函数体2.[]中括号,表示一个数组,也可以理解为一个数组对象3.{}和[]一起使用,可以组成一个对象数组4.( )多表示参数...
2022-03-03 22:30:55
1220
原创 来道算法-基础篇
题目:整数反转解题思路:1.将整数转换为字符串使用toString(),字符串转换为数组split();2.运用reverse()反转,在运用json()转换将数组转换为字符串;3.最后判断正负返回结果。//整数反转const reversalNum=(x)=>{x=x.toString()var str=x.split("").reverse().json("")str=parsenInt(str)if(str>2**31-1)retutn 0return x
2022-02-25 22:55:26
153
原创 Promise的缺点?
1). 无法取消Promise,一旦创建他就会立即执行,无法中途取消2). 如果不设置回调函数,Promise内部抛出的错误,不会反应到外部3). 当处于Pending状态时,无法得知目前进展到哪一个阶段(刚刚开始还是即将结束)...
2022-02-25 22:06:17
388
原创 闭包的好处和坏处?
闭包的好处1.缓存2.面向对象中的对象3.实现封装,防止变量跑到外层作用域中,发生命名冲突4.匿名自执行函数,匿名自执行函数可以减小内存消耗闭包的坏处1.内存消耗函数的活动对象会随着执行期上下文一起销毁,但是,由于闭包引用另外一个函数的活动对象,因此这个活动对象无法被销毁,这意味着,闭包比一般的函数需要更多的内存消耗。2.性能问题使用闭包时,会涉及到跨作用域访问,每次访问都会导致性能损失。...
2022-02-21 10:04:43
1197
原创 异常捕获语句执行的过程为?
代码正常运行,如果在try中出现了错误,try里面出现错误的语句后面的代码都不再执行,直接跳转到catch中=>catch中处理错误信息=>然后继续执行后面的代码如果try中没有出现错误,那么不走catch直接执行后面的代码通过try-catch语句进行异常捕获之后,代码将会继续执行,而不会中断。...
2022-02-19 21:46:04
354
原创 offsetleft和styleleft区别?
offsetleft和styleleft区别?(1)最大区别在于offsetLeft可以返回没有定位盒子的距离左侧的位置。如果父系盒子中都没有定位,以body为准。(2)offsetTop返回的是数字,而style.top返回的是字符串,除了数字外还带有单位:px。(3)offsetTop只读,而style.top可读写。(只读是获取值,可写是赋值)(4)如果没有给HTML元素指定过top样式,则style.top返回的是空字符串。style.left只能获取行内式,如果没...
2022-02-19 21:42:49
423
原创 AJAX 的优点及缺点?
AJAX的优点1)可以无需刷新页面而与服务器端进行通信。2)允许你根据用户事件来更新部分页面内容。AJAX的缺点1)没有浏览历史,不能回退2)存在跨域问题(同源)3)SEO不友好
2022-02-19 21:21:59
293
原创 每天三道前端面试题03
1.Vue 生命周期总共分为几个阶段?(必会)2.列举三种强制类型转换3.toString()与String()的区别-----------------1.Vue 生命周期总共分为几个阶段?生命周期分为三大阶段:初始化显示、更新显示、销毁Vue实例初始化阶段的钩子函数:beforeCreate() 实例创建前:数据和模板均未获取到 created() 实例创建后: 最早可访问到 data 数据,但模板未获取到 beforeMount() 数据挂载前:模板已获取到,但是数据未挂
2022-01-18 18:10:32
97
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人