知识点总结
在工作中遇到的一些问题总结。
charlie的笔记
I am currently engaged in front-end development, and the main technology stacks include React, Vue, Node, SQL, etc.
展开
-
GET和POST区别(思维导图总结)
GET和POST区别原创 2022-08-30 10:43:12 · 119 阅读 · 0 评论 -
真实DOM和虚拟DOM
真实DOM和虚拟DOM原创 2022-08-16 19:58:55 · 125 阅读 · 0 评论 -
浅析React Filber
浅析React Filber原创 2022-08-11 23:06:02 · 513 阅读 · 0 评论 -
React生命周期总结
一图总结React生命周期原创 2022-08-11 21:39:11 · 148 阅读 · 0 评论 -
开发过程中,遇到file协议跨域问题,如何在不做任何配置的情况下快速绕过跨域?
将下列代码复制到一个bat文件,双击打开即可原创 2022-08-10 23:18:44 · 561 阅读 · 0 评论 -
React函数组件中,如何结合hooks让父组件可以访问子组件的方法?
好了,现在父组件就可以调用子组件暴露的方法了...原创 2022-08-10 23:06:26 · 228 阅读 · 0 评论 -
【React】useReducer && useContext
React中如何使用useReducer和useContext原创 2022-08-04 13:58:13 · 108 阅读 · 0 评论 -
React中如何使用SVG图像
React中如何使用SVG图像原创 2022-06-24 16:49:20 · 1666 阅读 · 0 评论 -
React中使用原生DOM API 中的innerHTML
React中使用原生DOM API 中的innerHTML原创 2022-06-23 17:53:31 · 296 阅读 · 0 评论 -
React JSX 条件渲染 注意点
在 JSX 使用条件渲染时,需要注意一点,即,条件判断表达式必须总是布尔值因为有一些“falsy”值,比如数字 0 ,仍然会被React渲染。例如,以下代码并不会像你预期那样工作,因为当 props.messages 是空数组时,0 仍然会被渲染:<div> { props.messages.length && <MessageList messages={props.messages} /> }</div>要解决这个问题.原创 2022-05-31 15:46:16 · 274 阅读 · 0 评论 -
ES6的Proxy比ES5的Object.defineProperty好在哪里
Proxy可以直接监听对象而非属性Proxy直接可以劫持整个对象,并返回一个新对象,不管是操作便利程度还是底层功能上都远强于Object.defineProperty。Proxy可以直接监听数组的变化Proxy有多达13种拦截方法,不限于apply、ownKeys、deleteProperty、has等是Object.defineProperty不具备的。想要深入了解Proxy,可以阅读阮一峰老师的“ECMAScript 6 入门”想要深入了解Object.defineProperty,可以阅读.原创 2022-05-30 23:33:04 · 196 阅读 · 0 评论 -
HTML5自定义属性 data-
HTML5规定可以为元素添加非标准的属性,但是要添加前缀data-,目的是为元素提供与渲染无关的信息,或者提供语义信息。这些信息可以任意添加,随便命名。例子const div = document.getElementById('myDiv');const myName = div.dataset.mayName; // 取得值div.dataset.myName = 'charlie'; // 设置值...原创 2022-05-09 21:58:33 · 487 阅读 · 0 评论 -
javascript重新加载页面 location.reload()
调用lcation.reload()方法时需要注意,如果不加参数,有可能从缓存中加载,如果想确保从服务器重新加载,可以这样用:location.reload(true);位于reload()调用之后的代码可能会执行也可能不会执行,这要取决于网络延迟或系统资源等因素,因此,最好将reload()放在代码的最后一行。...原创 2022-05-06 23:07:24 · 1552 阅读 · 0 评论 -
JS深拷贝
深拷贝遍历function deepClone(startObj,endObj){ let obj = endObj || {}; for(let i in startObj){ if(typeof startObj[i] === 'object'){ // 判断是数组还是对象 obj[i] = Array.isArray(startObj[i]) ? [] : {}; deepClone(sta原创 2022-04-21 22:48:21 · 40 阅读 · 0 评论 -
【JS*知识*arguments】
函数内部属性之arguments1.arguments是函数内部的一个特殊对象,如果在控制台中打印,可以看到其原型上的constructor为Object;2.arguments是一个类数组,因为它可以使用数组的方括号语法来访问函数参数;3.主要用途是保存函数参数,它包含着传入函数中的所有参数。例如一个函数传入了2个参数,那么arguments[0]就是第一个参数;4.argument对象有一个重要的属性,叫callee,是一个指针,指向拥有这个arguments对象的函数经典例子funct原创 2022-04-20 23:06:16 · 50 阅读 · 0 评论 -
css实现播放效果
今天有个需求,需要找一个播放效果的动图,找了很久要么需要付费,要么不怎么好看,就自己用css动画写了一个。<!DOCTYPE html><html> <head> <meta charset="utf-8"> <title>语音播放特效</title> <style type="text/css"> #playing{ float: left; po原创 2021-09-24 15:58:09 · 612 阅读 · 0 评论 -
Axios传参的三种方式
axios传参转载 2021-09-10 11:32:08 · 15428 阅读 · 1 评论 -
理解浅拷贝和深拷贝
浅拷贝浅拷贝只能拷贝对象里面的一层,不能拷贝对象里面更深层次的属性和属性值。例如:var oldObj = { id: 1, name: 'charlie', msg: { age: 18 } }对于oldObj对象,浅拷贝只能拷贝oldObj.id,oldObj.name,而不能拷贝更深层次的数据oldObj.msg.age浅拷贝复制的其实是内存地址,复原创 2020-11-30 23:58:37 · 72 阅读 · 0 评论 -
理解call()、apply()、bind()方法
函数内this指向问题这些 this 的指向,是当我们调用函数的时候确定的。 调用方式的不同决定了this 的指向不同一般指向我们的调用者.JavaScript 为我们专门提供了一些函数方法来帮我们更优雅的处理函数内部 this 的指向问题,常用的有 bind()、call()、apply() 三种方法。call()方法可以调用函数可以改变函数内部this指向可以实现继承用法:fun.call(thisArg, arg1, arg2, ...) thisArg:在 fun 函数原创 2020-11-29 20:35:32 · 135 阅读 · 0 评论 -
构造函数、对象实例、原型对象三者之间的关系
构造函数构造函数是一种特殊的函数,主要用来初始化对象,即为对象成员变量赋初始值,它总与 new 一起使用。一般情况下我们会把公共的属性定义到构造函数里面,而公共的方法放到原型对象身上。在 JS 中,使用构造函数时要注意以下两点:1.构造函数用于创建某一类对象,其首字母要大写2.构造函数要和 new 一起使用才有意义new 在执行时会做四件事情①在内存中创建一个新的空对象。②让 this 指向这个新的对象。③执行构造函数里面的代码,给这个新对象添加属性和方法。④返回这个新对象(所以构造函数里面不需要原创 2020-11-29 18:46:55 · 1980 阅读 · 2 评论 -
css实现多行文字垂直居中
flex方法<div class="father"> <div class="children"> <span>多行文字垂直居中</span> <span>多行文字垂直居中</span> <span>多行文字垂直居中</span> <span>多行文字垂直居中</span>原创 2020-11-29 00:17:35 · 471 阅读 · 0 评论 -
javaScript垃圾回收机制
javaScript垃圾回收机制原理垃圾收集器会按照固定的时间间隔找出不再继续使用的变量,释放其占用的内存。标记清除这是javaScript最常用的垃圾收集方式。当变量进入环境时,将其标记为“进入环境”,当变量离开环境时将其标记为“离开环境”。垃圾收集器在运行时会给存储在内存中的所有变量都加上标记。然后,它会去掉环境中的变量以及被环境中的变量引用的变量的标记。而在此之后再被加上标记的变量将被视为准备删除的变量,原因是环境中的变量已经无法再访问到这些变量了。最后,垃圾收集器完成内存清除工作。引用计数原创 2020-11-29 00:04:51 · 127 阅读 · 0 评论 -
浏览器性能优化
浏览器性能优化1.减少http请求,合理设置http缓存2.应用浏览器缓存3.启用压缩4.使用css雪碧图(精灵图)css sprites5.图片懒加载,路由懒加载6.css放在头部,js放在底部原创 2020-11-27 23:50:47 · 74 阅读 · 0 评论 -
对闭包的理解
对闭包的理解闭包定义闭包是指有权访问另一个函数作用域的变量的函数。----《javaScript高级程序设计》闭包的主要作用延伸了变量的作用范围。闭包的应用利用闭包的方式获取索引号<ul> <li>我的索引为0</li> <li>我的索引为1</li> <li>我的索引为2</li> <li>我的索引为3</li>原创 2020-11-28 22:58:45 · 110 阅读 · 0 评论