此名字暂不可见
No distraction,it's you and me

Cypher's Blog

Welcome to my Blog!
zustand
Zustand1.序:​ 在 React 中,“状态管理”是指管理组件之间共享的数据状态的方式。简单来说,就是: 让组件知道数据的来源,并在数据发生变化时正确地更新 UI。 ​ 但是,如果组件结构非常的复杂,单靠useState和props就不够用了。因此,我们需要一些额外的工具来帮助我们管理状态,比如Zustand。 2.为什么要用Zustand:​ 很简单,因为它简单好用😋: 2.1 **简单的API **:​ Zustand 只需要一个 create 函数来创建状态,不需要 reducer、action、dispatch、middleware 等复杂概念。 12345678impor ...

http与WebSocket
1. http1.1 什么是http:​ http,即超文本传输协议,是TCP/IP协议集中的一个应用层协议,是客户端与服务端进行交互时必须遵循的规则。它用于Web浏览器与Web服务器之间交换数据的过程以及数据本身的格式,底层则是靠TCP进行可靠地信息传输。 附:除了http,我们经常能够看见https。https不是http的复数,而是在http的基础上进行了加密工作,具体在后文进行介绍。 1.2 http如何工作:​ 在浏览器的上方,有一个地址栏。如果我们在其中输入一个URL,浏览器就会给对应的服务器发送一个http请求,当服务器收到这个请求之后,就会进行处理,然后返回一个htt ...

闭包,垃圾回收和内存泄露
一 . 闭包1.什么是闭包:​ 什么是闭包?引用JS书中的定义,当一个函数能够记住并且访问其所在的作用域,即使这个函数是在作用域之外被执行的,这就是闭包。 123456789function a() { let a = 1 // a 是一个被 a 创建的局部变量 function b() { // b 是一个内部函数 console.log(a) // 使用了父函数中声明的变量 } return b}let c = a()c() //1 这就是闭包 ​ 在a() 函数中声明了一个私有变量 a , b() 函数是 a ...

作用域链与执行上下文
1. 作用域和作用域链1.1 什么是作用域​ 根据MDN的定义,作用域是当前的执行上下文(下面在讲),值和表达式在其中“可见”或可被访问。如果一个变量或表达式不在当前的作用域中,那么它是不可用的。作用域也可以堆叠成层次结构,子作用域可以访问父作用域,反过来则不行。 ​ 简单来说,作用域就是限制一个变量在程序中的使用范围。也就是说作用域最大的用处就是隔离变量,不让变量泄露出去,不同作用域下同名变量不会有冲突。 1.2 js中的作用域模型​ 在js中,采用的是词法作用域(在书里看到这个词感觉很高深啊),也称为静态作用域。与之相对应的还有一个动态作用域。 词法作用域:函数的作用域在函数被定义是就决 ...

react Hooks
react hooks1.什么是Hooks​ Hook是一些让你在不使用class的情况下使用state以及其他的react特性的函数。它允许你在函数组件里“钩入”React state等特性。不过,Hook不能再class中使用–你也没必要再使用class。 2.为什么要使用Hooks Hook允许你在非class的情况下使用更多的React特性。 Hook使你在无需修改组件结构的情况下复用状态逻辑。 Hook将组件中相互关联的部分拆分成更小的函数。 3.一些常见的函数1.useState​ 在useState()中,它接受状态的初始值作为参数,并返回一个数组,其中数组的第一项为一个变量 ...

硬绑定方法
前言​ 在JavaScript中,this的指向分为软绑定和硬绑定。其中,在对象调用其内部方法时,this指向它的调用者,这就是软绑定;而硬绑定就需要用到JavaScript的内置方法call/aplly/bind了实现了。 1.call​ call()方法会将this指向传入的第一个参数,并且可以接受多个参数 12345678910111213141516 console.log(this); function who(){ console.log([this.name,this.dialogue]); console.lo ...

这是标题
第一次写博客,文笔有点烂,也不知道要说些什么,各位见谅一下吧😋 1. js执行机制1.1 小谈一下​ js是一门单线程语言,执行程序就像在食堂吃饭排队,必须一个一个来。这样看上去充满秩序,但在面对像定时器这样需要等待处理的任务时就会卡住,这就好比你在做饭时需要煮饭洗菜炒菜,而你必须等煮完饭才能去洗菜炒菜,这期间你什么都干不了。这样相当浪费时间,因此js将任务分为了同步和异步两种类型。 1.2 同步​ 所谓同步,就是发出一个功能调用时,在没有得到结果之前,该调用就不返回或继续执行后续操作。 举个小例子:你是一名CCNU的学生。有一天,你想改善伙食,但无奈捉襟见肘。于是你给你家人打了个电话,只要 ...

Hello World
Welcome to Hexo! This is your very first post. Check documentation for more info. If you get any problems when using Hexo, you can find the answer in troubleshooting or you can ask me on GitHub. Quick StartCreate a new post1$ hexo new "My New Post" More info: Writing Run server1$ hexo ser ...