代码整洁之道:为什么好的命名很重要 P2

前言我很喜欢作者的这个系列文章,干净的代码不仅可以增强代码的健壮性,也能带来愉悦的心情,让人喜欢上 coding👨‍💻,编写代码是一门艺术🙆‍♂️,因此我们需要考虑使用更合理的实现方式,而不是为了完成 “任务” 而写出一些无用的变量以及各种 if 嵌套和回调地狱🤮。这些会导致代码结构混乱、逻辑难以理解,最终可能会给未来接手代码的程序员带来麻烦,甚至会得到未来接手你代码程序员的亲口祝福...

发布于 JS

代码整洁之道:实践指南 P1

前言 “阅读这本书有两种原因:第一,你是个程序员;第二,你想成为更好的程序员。很好,IT行业需要更好的程序员!”——罗伯特·C. 马丁(Robert C. Martin) 冲浪时看到的一篇文章,觉得写的很不错。翻译下放到自己博客上,顺便学习一下这本书的思想😁 以下是《代码整洁之道》中文翻译版的一个在线仓库,可以直接看 https://github.com/xiangshu233/Clea...

发布于 JS

再叙 JavaScript 事件循环

一、为什么 JavaScript 是单线程我们都知道 JavaScript 是一门单线程语言,也就是说,同一个时间内只能做一件事。至于它为什么不能是多线程,这和它的用途有关。作为浏览器脚本语言,JavaScript 的主要用途是与用户互动,操作 DOM。这决定了它只能是单线程,否则会带来很复杂的同步问题。比如,假定 JavaScript 同时有两个线程,一个线程在某个 DOM 节点上添加内容...

发布于   更新于 JS

js 中的 call、apply、bind 笔记

apply callFunction.prototype.apply()、Function.prototype.call() call() 和 apply() 是 Function 的方法,它的第一个参数是 this,第二个参数是是给 调用函数 传递的参数。call 和 apply() 都是为了改变某个函数运行时的 context 即上下文而存在的。 换句话说,就是为了改变函数体内部 th...

发布于 JS

eventLoop、promise 笔记

什么是宏任务与微任务JS是单线程,但是一些高耗时的操作就带来了进程阻塞的问题,为了解决这个问题,JS有两种任务的执行模式:同步模式(Synchronous)和异步模式(Asynchronous)。 在异步模式下,创建异步任务主要分为 宏任务(Macrotask) 和 微任务(Microtask) 两种。ES6规范中,宏任务被称为Task,微任务被称为Jobs。宏任务是由宿主(浏览器、Node...

发布于 JS

js 随笔记录

获取当前日期的前后日期1234567891011121314/** * getAfterDateStr 获取当前日期 的 前后日期 * @param {number} i 正数为之后的日期 负数为之前的日期 0(不传)为当前日期 */export function getAfterDateStr(i = 0) { let date = new Date(); c...

发布于 JS