echo's Blog

Do wonderful things😃

Event Loop 事件循环

Event Loop 事件循环

Event Loop 事件循环 Event Loop是nodejs当中特有的概念, 跟JS没有特定的关系 浏览器当中的事件处理和Event Loop没有关系 Event Loop到底是个什么东西呢 Event Loop我认为它是nodejs当中的一套完整的处理回调的机制, 它是运行在脱离于JS执行线程之外的, 它是处理Nodejs当中所有的回调, 包括常见的读文件, 写文件, 计时器等...

深拷贝,深克隆

深拷贝,深克隆

深拷贝,深克隆 首先明确深克隆就是, 拷贝一份和对象a(原对象)没有一点联系的对象b新对象 也就是说b对象中没有一点a对象中的引用 另一种理解 画出对象a和对象b的内存示意图, a和b没有连接点 符合上面所说的就是深克隆, 深拷贝 知识点&需要注意的点 理解递归是关键 清楚了解JS中的数据类型的划分 清楚的知道基本数据类型和复杂数据类型的区分 基本数据类型...

eventHub

eventHub

EventHub 首先确定eventHub支持的API 支持on 支持emit 支持off 支持once 具体实现请看源码 实现的大体思路 on是事件注册, 也就是订阅 Emit是事件触发, 也就是发布 off解绑事件注册 once注册只执行一次的事件 源码地址 源码地址

bind实现

bind实现

bind 如果不了解bind是如何使用的请看MDN [Bind- JavaScript MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_objects/Function/bind) 今天实现两种bind的使用 不使用n...

高阶函数

高阶函数

高阶函数 本来想把高阶函数和函数柯里化放在一起讨论的, 想了想还是分开讨论一下吧 什么是高阶函数 高阶函数的定义很简单 把函数当做参数,或者返回值是函数的函数就是高阶函数 高阶函数这个概念很简单, 也很容易理解, 但是讲起来可能会有一些困难 高阶函数举例 Array.prototype.map, Array.prototype.sort, Array.prototype.reduc...

函数递归, 记忆化, React优化

函数递归, 记忆化, React优化

函数递归, 记忆化, React优化 要想理解函数递归先要理解递归的含义 这里就不在铺开讲了, 可以看一下博客中递归的那篇文章详细讲解的递归 这里强调一下递归的几个特点 层层递进, 然后层层回归 层层递进其实就是函数的不断压栈 层层回归: 当一次递进过程结束的时候, 就是层层回归的开始, 也就是 压如栈中的函数不断的弹出, 回归一次弹出一次, 计算得到一次结果 函...

函数柯里化

函数柯里化

函数柯里化 函数柯里化 什么是函数柯里化呢, 简单来说就是所有的函数都只接受一个参数 那么基于函数接受单一参数有什么实际的意义呢, 其实这个作用还是很大的, 而且已经衍生出了很多的理论知识, 感兴趣的同学可以google了解一下 本文谈论一下如何柯里化一个函数 前面说了, 函数柯里化就是函数接受一个参数, 如果接受一个参数呢? 我第一次接触的时候是这样想的, 不就是要接受一个...

JS函数详解

JS函数详解

JS函数全解 函数是什么 对于汇编语言来说函数其实就是汇编语言当中的子程序, 子程序有几个特点 由一条或者多条语句组成 功能相对独立 完成特定的任务 子程序又衍生了以下三种 有返回值的叫做函数 没有返回值的叫做过程 存在于类中或者对象中的叫做方法 对于JS来说只有函数和方法, 因为JS所有的函数都有返回值, 默认是undefined 数学领域中也有...

JSthis详解

JSthis详解

this详解 如何声明一个函数? const f = new Function(‘x’, ’y’, ‘return x + y’) function f(x, y) { return x + y } const f = function (x, y) { return x + y } const f = () => {return x + y} 其中1, 2, ...

Script标签加载详解

Script标签加载详解

Script标签加载详解 script标签的几个特点 script标签(不含defer, async)会阻止文档的渲染, 脚本会立即下载并执行 script在默认情况下下载执行顺序和出现顺序一致 当script标签在head标签里面时, 在下载脚本时,浏览器处于阻塞状态, 网络不好或者文件过大时,页面处于空白停顿状态 当把script标签放在页面底部, 这是大家公认的提...