Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions docs/JavaScript/copy.md
Original file line number Diff line number Diff line change
Expand Up @@ -110,7 +110,7 @@ console.log(fxArrs) // ["One", "love", "Three"]

## 三、深拷贝

深拷贝开辟一个新的栈,两个对象属完成相同,但是对应两个不同的地址,修改一个对象的属性,不会改变另一个对象的属性
深拷贝开辟一个新的栈,两个对象属性完全相同,但是对应两个不同的地址,修改一个对象的属性,不会改变另一个对象的属性

常见的深拷贝方式有:

Expand Down Expand Up @@ -253,4 +253,4 @@ console.log('obj4',obj4) // obj4 { name: 'update', arr: [ 1, [ 5, 6, 7 ], 4 ] }

- 浅拷贝是拷贝一层,属性为对象时,浅拷贝是复制,两个对象指向同一个地址

- 深拷贝是递归拷贝深层次,属性为对象时,深拷贝是新开栈,两个对象指向不同的地址
- 深拷贝是递归拷贝深层次,属性为对象时,深拷贝是新开栈,两个对象指向不同的地址
6 changes: 3 additions & 3 deletions docs/React/React Router model.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,14 +8,14 @@

在单页应用中,一个`web`项目只有一个`html`页面,一旦页面加载完成之后,就不用因为用户的操作而进行页面的重新加载或者跳转,其特性如下:

- 改变 url 且不让浏览器像服务器发送请求
- 改变 url 且不让浏览器向服务器发送请求

- 在不刷新页面的前提下动态改变浏览器地址栏中的URL地址

其中主要分成了两种模式:

- hash 模式:在url后面加上#,如http://127.0.0.1:5500/home/#/page1
- history 模式:允许操作浏览器的曾经在标签页或者框架里访问的会话历史记录
- history 模式:允许操作浏览器曾经在标签页或者框架里访问的会话历史记录


## 二、使用
Expand Down Expand Up @@ -165,4 +165,4 @@ export default Route;

- https://juejin.cn/post/6870376090297171975#heading-9

- https://segmentfault.com/a/1190000023560665
- https://segmentfault.com/a/1190000023560665
2 changes: 1 addition & 1 deletion docs/React/diff.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@

而`diff`算法就是更高效地通过对比新旧`Virtual DOM`来找出真正的`Dom`变化之处

传统diff算法通过循环递归对节点进行依次对比,效率低下,算法复杂度达到 O(n^3),`react`将算法进行一个优化,复杂度姜维`O(n)`,两者效率差距如下图:
传统diff算法通过循环递归对节点进行依次对比,效率低下,算法复杂度达到 O(n^3),`react`将算法进行一个优化,复杂度降为`O(n)`,两者效率差距如下图:

![](https://static.vue-js.com/a43c9960-ec91-11eb-ab90-d9ae814b240d.png)

Expand Down
4 changes: 2 additions & 2 deletions docs/React/how to use redux.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
`react-redux`将组件分成:

- 容器组件:存在逻辑处理
- UI 组件:只负责现显示和交互,内部不处理逻辑,状态由外部控制
- UI 组件:只负责显示和交互,内部不处理逻辑,状态由外部控制

通过`redux`将整个应用状态存储到`store`中,组件可以派发`dispatch`行为`action`给`store`

Expand Down Expand Up @@ -228,4 +228,4 @@ import { actions, reducer, view as TodoList } from './xxxx'
## 参考文献

- https://www.redux.org.cn/docs/basics/UsageWithReact.html
- https://segmentfault.com/a/1190000010384268
- https://segmentfault.com/a/1190000010384268
2 changes: 1 addition & 1 deletion docs/React/redux.md
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ import { createStore } from 'redux' // 引入一个第三方的方法
const store = createStore() // 创建数据的公共存储区域(管理员)
```

还需要创建一个记录本去辅助管理数据,也就是`reduecer`,本质就是一个函数,接收两个参数`state`,`action`,返回`state`
还需要创建一个记录本去辅助管理数据,也就是`reducer`,本质就是一个函数,接收两个参数`state`,`action`,返回`state`

```js
// 设置默认值
Expand Down
4 changes: 2 additions & 2 deletions docs/React/render.md
Original file line number Diff line number Diff line change
Expand Up @@ -109,7 +109,7 @@ class Foo extends React.Component {
}
```

点击按钮,则调用`setState`方法,无论`count`发生变化辩护,控制台都会输出`Foo render`,证明`render`执行了
点击按钮,则调用`setState`方法,无论`count`是否发生变化,控制台都会输出`Foo render`,证明`render`执行了

- 函数组件通过`useState hook`修改状态

Expand Down Expand Up @@ -215,4 +215,4 @@ function Foo() {
## 参考文献

- https://zhuanlan.zhihu.com/p/45091185
- https://juejin.cn/post/6844904181493415950
- https://juejin.cn/post/6844904181493415950