读懂UML类图 发表于 2019-04-04 | 更新于: 2019-11-26 | 分类于 写着玩 字数统计: 918 字 | 阅读时长 ≈ 3 分钟类的描述在面向对象编程,类是一种面向对象计算机编程语言的构造,是创建对象的蓝图,描述了所创建的对象共同的属性和方法。类的更严格的定义是由某种特定的元数据所组成的内聚的包。它描述了一些对象的行为规则,而这些对象就被称为该类的实例。类有接口和结构。接口描述了如何通过方法与类及其实例互操作,而结构描述了一 ...阅读全文 »
DIP、IoC、DI、JS 发表于 2019-03-31 | 更新于: 2023-02-06 | 分类于 这个想法不一定对 字数统计: 2,349 字 | 阅读时长 ≈ 10 分钟在这个标题中,除了 JS 是乱入之外,其它的几个词汇都是存在一个共同点的,那就是依赖。那么,依赖是什么呢?比如,现在我正在写这篇博客文,但是我得在电脑上编辑,电脑便是我完成这件事的依赖。而在代码中,最直观的体现是模块之间的依赖。如某个模块依赖另外一个模块,那么另外的那个模块就是该模块的依赖。其实在上 ...阅读全文 »
JaVaScript中的模块 发表于 2019-03-24 | 更新于: 2019-03-24 | 分类于 这个想法不一定对 字数统计: 985 字 | 阅读时长 ≈ 4 分钟模块在 JavaScript 中,模块只不过是基于函数某些特性的代码组织方式。在《你不知道的 JavaScript》中,给出了模块模式因具备的两个必要条件:必须有外部的封闭函数,该函数必须至少被调用一次(每次调用都会创建一个新的模块实例)。封闭函数必须返回至少一个内部函数,这样内部函数才能在私有作用 ...阅读全文 »
异步的JavaScript(生成器篇) 发表于 2019-03-21 | 更新于: 2019-03-24 | 分类于 很难么 字数统计: 1,960 字 | 阅读时长 ≈ 8 分钟回顾所谓的异步,就是程序的一部分现在进行,而另一部分则在将来运行。异步处理的重点就是如何处理将来运行的那一部分。回调是 JavaScript 中最基本的异步模式,就是事先约定好将来要做的事然后回头调用。简单直接,但也存在不信任、调用嵌套过深等问题。对于编写代码、维护代码的我们而言,人类的大脑还是习惯 ...阅读全文 »
从迭代器模式到迭代协议 发表于 2019-03-18 | 更新于: 2019-03-20 | 分类于 很难么 字数统计: 1,052 字 | 阅读时长 ≈ 5 分钟迭代器模式迭代器模式是指提供一种方法顺序访问一个聚合对象中的各个元素,而不需要暴露该对象的内部表示。迭代器分为内部迭代器和外部迭代器。内部迭代器只需一次初始调用,而外部迭代器必须显式地请求迭代下一个元素,这样我们就可以手动控制迭代过程。实现一个内部迭代器:1234567891011Array.pro ...阅读全文 »
用DevTools提高你的工作效率 发表于 2019-03-09 | 更新于: 2019-03-10 | 分类于 善事利器 字数统计: 1,587 字 | 阅读时长 ≈ 6 分钟Chrome DevTools 调试使用 demo地址作为前端开发者,免不了要和 DevTools 打交道,熟练的使用 DevTools 能够大大提高我们的工作效率。然而,开发者工具的使用并没有得到足够的重视。工欲善其事必先利其器,更何况,工具的学习成本比专业技能的学习成本小的多。Chrome 有不 ...阅读全文 »
异步的JavaScript(Promise篇) 发表于 2019-03-02 | 更新于: 2019-03-10 | 分类于 很难么 字数统计: 2,400 字 | 阅读时长 ≈ 9 分钟引言错误理解精心组织起来的异步代码还不如使用一团乱麻的回调函数。在处理异步的问题上,回调基本上能够胜任,不过这都是建立在一切正常运转的基础上。然而事与愿违,回调受到控制反转的影响,把控制权交给了第三方,这种控制转移导致了一系列的信任问题(回调调用过早、回调调用过晚、回调不被调用、回调调用次数过少或过 ...阅读全文 »
前端笔试之手写代码 发表于 2019-02-23 | 更新于: 2019-11-16 | 分类于 写着玩 字数统计: 1,315 字 | 阅读时长 ≈ 7 分钟扁平化嵌套数组/flat实现描述:将嵌套多层的数组展开平铺成只有一层的数组。12let array = [1, [1, 2, 3], [1, [2, {}]] ]handle(array) // [1, 1, 2, 3, 1, 2, {}]方法一:12cons ...阅读全文 »
异步的JavaScript(回调篇) 发表于 2019-02-16 | 更新于: 2019-03-10 | 分类于 很难么 字数统计: 1,677 字 | 阅读时长 ≈ 6 分钟唯一比不知道代码为什么崩溃更可怕的事情是,不知道为什么一开始它是工作的!在 ECMA 规范的最近几次版本里不断有新成员加入,尤其在处理异步的问题上,更是不断推陈出新。然而,我们在享受便利的同时,也应该了解异步到底是怎么一回事。现在与将来JavaScript 是单线程的,一次只能专注于一件事。如果浏览 ...阅读全文 »
关于MVC模式简单代码实现 发表于 2019-02-06 | 更新于: 2023-02-06 | 分类于 设计模式 字数统计: 939 字 | 阅读时长 ≈ 4 分钟经过之前的咬文嚼字说策略、在JavaScript中尝试组合模式、白话MVC/MVP/MVVM 和 较早之前的进击的观察者模式等文章的铺垫,终于可以把这些理论的东西用于实践了。废话不多说,直奔主题。GoF 并不将 MVC 引述为一种设计模式,而是把它看做是构建一个用户界面的类的集合。按照他们的观点,它 ...阅读全文 »