大涛子

Results 99 issues of 大涛子

# Git 常用命令 ## 基本使用 ### 需要了解的概念 Git 有三种状态,文件可能处于其中之一: 已提交(committed)、已修改(modified) 和 已暂存(staged)。 - `已修改`表示修改了文件,但还没保存到数据库中 - `已暂存`表示对一个已修改文件的当前版本做了标记,使之包含在下次提交的快照中 - `已提交`表示数据已经安全地保存在本地数据库中 与之对应的操作就会有三个阶段: - 工作区(Working Directory) - 暂存区/索引(Staging Area / Index) - Git 目录/仓库(.git...

Tool 系列

## 学习资料 - [JS正则表达式完整教程](https://juejin.im/post/5965943ff265da6c30653879) —— 老姚出品 - [【建议收藏】25+正则面试题详尽解析,让你轻松通过正则面试,让你少写2000行代码](https://juejin.cn/post/6999768570570178596)

Tool 系列

## 前言 主要收录平时看到的工具函数,大部分内容保持了原作者的原有信息。 ## 主要内容 ### 获取文件后缀名 使用场景:上传文件判断后缀名 ```js /** * 获取文件后缀名 * @param {String} filename */ export function getExt(filename) { if (typeof filename == 'string') { return filename.split('.').pop().toLowerCase() }...

JavaScript 专题系列
Tool 系列

## 前言 > 整体内容来自这里[JavaScript 工具函数大全(新)](https://github.com/roger-hiro/BlogFN/blob/master/JavaScript%20%E5%B7%A5%E5%85%B7%E5%87%BD%E6%95%B0%E5%A4%A7%E5%85%A8%EF%BC%88%E6%96%B0%EF%BC%89.md),方便自己平时应用学习 ## 目录 - 第一部分:数组 - 第二部分:函数 - 第三部分:字符串 - 第四部分:对象 - 第五部分:数字 - 第六部分:浏览器操作及其它 ## 1. 第一部分:数组 ### 1. `all`:布尔全等判断 ```js const all = (arr,...

JavaScript 专题系列
Tool 系列

## 定义 MDN 对闭包的定义为: > 闭包是指那些能够访问自由变量的函数。 那什么是自由变量呢? > 自由变量是指在函数中使用的,但既不是函数参数也不是函数的局部变量的变量。 由此,我们可以看出闭包共有两部分组成: > 闭包 = 函数 + 函数能够访问的自由变量 ECMAScript中,闭包指的是: 从理论角度:所有的函数。因为它们都在创建的时候就将上层上下文的数据保存起来了。哪怕是简单的全局变量也是如此,因为函数中访问全局变量就相当于是在访问自由变量,这个时候使用最外层的作用域。 从实践角度:以下函数才算是闭包: - 即使创建它的上下文已经销毁,它仍然存在(比如,内部函数从父函数中返回) - 在代码中引用了自由变量 ## 分析 当我们了解了具体的执行过程后,我们知道 f 执行上下文维护了一个作用域链: ```js fContext...

JavaScript 深入系列

# Next.js 使用总结 ## SSR VS CSR ### 概念 SSR 即服务端渲染(Server Side Rendering),对应的就是 CSR ,客户端渲染(Client Side Rendering)。 区别: - SSR,由服务端把渲染的完整的页面吐给客户端,减少了一次客户端到服务端的一次 http 请求,加快相应速度,一般用于首屏的性能优化 - CSR,它依赖的是运行在客户端的 JS,用户首次发送请求只能得到小部分的指引性 HTML 代码。第二次请求将会请求更多包含 HTML 字符串的 JS...

React 系列

## 主要内容 - Redux 怎么使用,为什么要这么用 - React-redux 分别在类组件和 Hooks 中如何使用 - 如何实现一个 React-redux?更深层次了解它的使用原理 ## Redux ### Redux 和 React-redux > Redux 是 JavaScript 状态容器,提供可预测化的状态管理。 —— Redux 中文文档 Redux 和 React-redux...

React 系列

# React Hooks 使用总结 ## 组件类的缺点 1. 大型组件很难拆分和重构,也很难测试。 2. 业务逻辑分散在组件的各个方法之中,导致重复逻辑或关联逻辑。 3. 组件类引入了复杂的编程模式,比如 render props 和高阶组件 ## 函数组件 1. 数据流的管道,不是复杂的容器 1. 组件的最佳写法应该是函数,而不是类 1. 必须是纯函数,不能包含状态,也不支持生命周期方法,因此无法取代类 ## 类和纯函数 - 类:数据和逻辑的封装 - 纯函数:只应该做一件事,就是返回一个值 -...

React 系列

## 模拟 ```js // 首先在 observer 的过程中会注册 get 方法,该方法用来进行「依赖收集」。 // 在它的闭包中会有一个 Dep 对象,这个对象用来存放 Watcher 对象的实例。 // 其实「依赖收集」的过程就是把 Watcher 实例存放到对应的 Dep 对象中去。 // get 方法可以让当前的 Watcher 对象(Dep.target)存放到它的 subs 中(addSub)方法, // 在数据变化时,set...

Vue 系列