Event及CustomEvent的介绍及使用

前言

单页应用中数据传递的方式有很多,有时候我们并没有用react或者vue,自己封装的简单的单页应用,需要传递一些简单的数据,那么自定义事件的方式是一种。今天haorooms博客简单介绍一下Event及CustomEvent的介绍及使用

event自定义事件

javascript提供了Event对象,所有的事件都是这个对象的实例,或者说继承了Event.prototype对象。Event对象本身就是一个构造函数,可以用来生成新的实例。

 new Event(type, options);

babel代码编译流程介绍(一)

前言

babel在我们工作中必不可少,但是很多情况下项目都继承了,大部分同学进知道简单的配置,其中的一些代码编译流程及原理,ast源码树等不是很清楚,本文是haorooms前端博客babel代码编译流程系列课程,本套课程主要记录ast源码解析,babel编译流程,babel应用及插件书写等等。

babel中的ast

babel 编译的第一步是把源码 parse 成抽象语法树 AST (Abstract Syntax Tree),后续对这个 AST 进行转换。(之所以叫抽象语法树是因为省略掉了源码中的分隔符、注释等内容)

js异步操作中的串行和并行

前言

本文写一下js中es5和es6针对异步函数,串行执行和并行执行的方案。以及串行和并行结合使用的例子。

es5方式

在es6出来之前,社区nodejs中针对回调地狱,已经有了promise方案。假如多个异步函数,执行循序怎么安排,如何才能更快的执行完所有异步函数,再执行下一步呢?这里就出现了js的串行执行和并行执行问题。

异步函数串行执行

【日常】mac电脑移动硬盘未退出拔掉,导致再次插入无法识别,问题解决

前言

我的mac笔记本容量比较小,经常用移动硬盘,但是不小心移动硬盘没有安全退出,导致mac电脑移动硬盘再次插入无法识别,这个问题很痛苦。一开始我用window硬盘修复工具修复一下,插到mac里面奇迹会好,但是随着硬盘东西增多,这个方法后来不起作用了。如何解决呢?下面记录一下。

恢复步骤

一、首先插入自己的硬盘,然后找到mac的磁盘工具

js洋葱模型的实现

前言

洋葱模型指的是方法的执行像洋葱一样,一层一层往里执行,直到中心点后,再一层一层往外出来。

如下图: enter image description here