2024-05-28
chrome
00
js
open -n "/Applications/Google Chrome.app" --
2024-05-28
css
00

image.png

2024-04-09
javascript
00

这里不过多的赘述promise是什么,既然点开此文章,就代表你对js已经很熟练使用了。所以,接下来给我一点时间,让我在这详细分步骤的手写promise核心区域,并且包括一些边界情况。

手写Promise,方便更清晰的认识内部处理什么

包括:如等待行异步?状态之间的关系?链式操作?

观察Promise的写法

js
const pro = new Promise((resolve,reject)=>{ resolve('成功') reject('失败') })

以上就是一个简单的Promise案例,其中resolve表示成功后的回调函数,reject表示失败后的回调函数。

手写Promise必须要明白他内部怎么回事,Promise本身会有三个状态,分别是"等待(PENDING)","成功(FULFILLED)","失败(REJECTED)"。其中默认Promise的状态为“等待”,状态变化只能是“成功”、“失败”,只要状态一发生变化,后续就不可逆,不可再更改状态(可以理解:你打开王者荣耀,随机进了一局排位赛,比赛结果只有输赢,并且当前输赢已定局不能更改)。

绘图说明:

promise状态关系.svg

2024-03-25
webpack
00

在 Webpack 中,Loader 和 Plugin 是两个不同的概念,它们分别用于处理不同的任务。以下是它们的区别以及常用的 Loader 和 Plugin:

Loader 和 Plugin 的区别:

  1. Loader:
    • Loader 用于将非 JavaScript 文件转换为 Webpack 能够处理的模块。
    • 它们允许你在引入模块时对文件进行预处理。
    • 例如,可以使用 CSS Loader 和 Style Loader 将 CSS 文件转换为 JavaScript 模块,并将样式应用到页面上。
    • Loader 在模块加载阶段运行,并直接影响模块的内容。
2024-03-25
webpack
00

首先,要有一个总的开头

webpack其实在他的构建过程中,是有一个步骤,也就是将所有的一个模块进行一个编译处理,就可以在以下的几点做的优化处理

首先第一个 既然他要去查找文件,那我们就让他查找的范围缩小,从而提升他的一个查找效率

比方说:

我们就可以用一些常用的配置,比方说alias、extensions这些配置进行一个范围的缩小