2026-01-14
JavaScript 那些事儿
2026-01-14 ~ 2026-01-19
一直没有静下心来,打扫 JavaScript 的边边角角,慢慢干吧~
2024-12-13
call、apply 和 bind
2024-12-13 ~ 2024-12-13
callapplybind 是 JavaScript 中用于控制函数执行上下文(即 this 的值)的三个重要方法。它们的主要作用是允许你显式地指定函数内部的 this 指向。
2024-12-13
浏览器的渲染过程
2024-12-13 ~ 2024-12-13

➡️ 本文内容主体部分来自 浏览器的渲染过程 - 知乎

通常,我们只需要编写 HTML,CSS,JavaScript,浏览器上就能呈现出漂亮的网页了,但是浏览器是如何使用我们的代码在屏幕上渲染像素的呢?

2024-12-13
网页中的锚点跳转
2024-12-13 ~ 2024-12-13
如何设置锚点,使得我们可以跳转到网页的指定位置呢?往下看。
2024-12-12
Source Map
2024-12-12 ~ 2024-12-12
Source Map 是一种文件格式,用于将压缩、混淆或转换后的代码映射回原始代码。它通常用于调试生产环境中的 JavaScript 代码,帮助开发者在浏览器中查看和调试原始源代码,而不是压缩或混淆后的代码。
2024-12-12
关于 fetch
2024-12-12 ~ 2024-12-12
fetch 是现代 JavaScript 中用于发起网络请求的一个全局 API。它提供了一种简单、灵活的方式来与服务器进行通信,基于 Promise,因此非常适合处理异步操作。fetchXMLHttpRequest 的替代品,广泛用于前端开发中。
2024-12-12
关于 Promise
2024-12-12 ~ 2024-12-12
Promise 是 JavaScript 中用于处理异步操作的一种对象。它代表了一个异步操作的最终完成(或失败)及其结果值Promise 提供了一种更清晰、更结构化的方式来处理异步代码,避免了传统的回调地狱(callback hell)问题。
2024-12-12
生成器
2024-12-12 ~ 2024-12-12
在 Node.js 中,generator 是一种特殊的函数,它允许你通过 yield 关键字暂停和恢复函数的执行。generator 函数使用 function* 语法来定义,并且返回一个 Generator 对象。这个 Generator 对象可以通过 next() 方法来控制函数的执行流程。
2024-11-26
Frontend
2024-11-26 ~ 2025-01-29
你可以在这里找到完整的路线图 Frontend Developer Roadmap ~ 注册了账号后,还可以同步进度,Nice ~
2024-10-25
TypeScript 那些事儿
2024-10-25 ~ 2025-01-29

TypeScript 闪念随手记……

:: 不要试图把一门语言的边边角角都一次性都搞清楚,没啥用,你又不准备成为“参考书”。一则平时使用的部分并没有那么多,二则脱离了实际应用的抽象文字并不容易记忆。

2024-08-06
React 基础脚手架示例
2024-08-06 ~ 2024-10-23
2024-05-09
浏览器中的尺寸大小和位置
2024-05-09 ~ 2024-12-20
在页面渲染的过程中,获取一个窗口或元素的尺寸大小及位置信息是必要的。鉴于市面上浏览器的多种多样以及某些历史原因,相关的一些元素属性和 API 可能有差异,这里我们以它们在 Chrome 中的表现为准,展开聊一下相关方面的东东 ~
2024-03-01
Web 开发相关体系结构随想
2024-03-01 ~ 2025-01-29
与其它领域相比,Web 开发更像是一个全栈化的工程,其使用的技术基本上涵盖了目前大部分应用所需。
2023-09-04
JS 高级程序设计·摘录
2023-09-04 ~ 2024-05-30

内容一览

封面
作者简介
数字版权声明
扉页
版权页
献词
译者序
序
前言
致谢

目录 第1章 什么是JavaScript 1.1 简短的历史回顾 1.2 JavaScript实现 1.3 JavaScript版本 1.4 小结 第2章 HTML中的JavaScript 2.1 <script>元素 2.2 行内代码与外部文件 2.3 文档模式 2.4 <noscript>元素 2.5 小结 第3章 语言基础 3.1 语法 3.2 关键字与保留字 3.3 变量 3.4 数据类型 3.5 操作符 3.6 语句 3.7 函数 3.8 小结 第4章 变量、作用域与内存 4.1 原始值与引用值 4.2 执行上下文与作用域 4.3 垃圾回收 4.4 小结 第5章 基本引用类型 5.1 Date 5.2 RegExp 5.3 原始值包装类型 5.4 单例内置对象 5.5 小结 第6章 集合引用类型 6.1 Object 6.2 Array 6.3 定型数组 6.4 Map 6.5 WeakMap 6.6 Set 6.7 WeakSet 6.8 选代与扩展操作 6.9 小结 第7章 选代器与生成器 7.1 理解迭代 7.2 迭代器模式 7.3 生成器 7.4 小结 第8章 对象、类与面向对象编程 8.1 理解对象 8.2 创建对象 8.3 继承 8.4 类 8.5 小结 第9章 代理与反射 9.1 代理基础 9.2 代理捕获器与反射方法 9.3 代理模式 9.4 小结 第10章 函数 10.1 箭头函数 10.2 函数名 10.3 理解参数 10.4 没有重载 10.5 默认参数值 10.6 参数扩展与收集 10.7 函数声明与函数表达式 10.8 函数作为值 10.9 函数内部 10.10 函数属性与方法 10.11 函数表达式 10.12 递归 10.13 尾用优化 10.14 包 10.15 立即调用的函数表达式 10.16 私有变量 10.17 小结 第11章 期约与异步函数 11.1 异步编程 11.2 期约 11.3 异步函数 11.4 小结 第12章 BOM 12.1 window对象 12.2 location对象 12.3 navigator对象 12.4 screen对象 12.5 history对象 12.6 小结 第13章 客户端检测 13.1 能力检测 13.2 用户代理检测 13.3 软件与硬件检测 13.4 小结 第14章 DOM 14.1节点层级 14.2 DOM编程 14.3 MutationObserver接口 14.4 小结 第15章 DOM扩展 15.1 Selectors API 15.2 元素遍历 15.3 HTML5 15.4 专有扩展 15.5 小结 第16章 DOM2和DOM3 16.1 DOM的演进 16.2 样式 16.3 遍历 16.4 范围 16.5 小结 第17章 事件 17.1 事件流 17.2 事件处理程序 17.3 事件对象 17.4 事件类型 17.5 内存与性能 17.6 模拟事件 17.7 小结 第18章 动画与Canvas图形 18.1 使用requestAnimationFrame 18.2 基本的画布功能 18.3 2D绘图上下文 18.4 WebGL 18.5 小结 第19章 表单脚本 19.1 表单基础 19.2 文本框编程 19.3 选择框编程 19.4 表单序列化 19.5 富文本编辑 19.6 小结 第20章 JavaScript API 20.1 Atomics与SharedArrayBuffer 20.2 跨上下文消息 20.3 Encoding API 20.4 File API与Blob API 20.5 媒体元素 20.6 原生拖放 20.7 Notifications API 20.8 Page Visibility API 20.9 Streams API 20.10 计时API 20.11 Web组件 20.12 Web Cryptography API 20.13 小结 第21章 错误处理与调试 21.1 浏览器错误报告 21.2 错误处理 21.3 调试技术 21.4 旧版IE的常见错误 21.5 小结 第22章处理XML 22.1 浏览器对XML DOM的支持 22.2 浏览器对XPath的支持 22.3 浏览器对XSLT的支持 22.4 小结 第23章 JSON 23.1 语法 23.2 解析与序列化 23.3 小结 第24章 网络请求与远程资源 24.1 XMLHttpRequest对象 24.2 进度事件 24.3 跨域资源共享 24.4 替代性跨源技术 24.5 Fetch API 24.6 Beacon API 24.7 Web Socket 24.8 安全 24.9 小结 第25章 客户端存储 25.1 cookie 25.2 Web Storage 25.3 IndexedDB 25.4 小结 第26章 模块 26.1 理解模块模式 26.2 凑合的模块系统 26.3 使用ES6之前的模块加载器 26.4 使用ES6模块 26.5 小结 第27章 工作者线程 27.1 工作者线程简介 27.2 专用工作者线程 27.3 共享工作者线程 27.4 服务工作者线程 27.5 小结 第28章 最佳实践 28.1 可维护性 28.2 性能 28.3 部署 28.4 小结 附录A ES2018 和ES2019 A.1 异步选代 A.2 对象字面量的剩余操作符和扩展操作符 A.3 Promise.prototype.finally() A.4 正则表达式相关特性 A.5 数组打平方法 A.6 Object.fromEntries() A.7 字符串修理方法 A.8 Symbolprototype.description A.9 可选的catch绑定 A.10 其他新增内容 附录B 严格模式 B.1 选择使用 B.2 变量 B.3 对象 B.4 函数 B.5 this强制转型 B.6 类与模块 B.7 其他变化 附录C JavaScript库和框架 C.1 框架 C.2 通用库 C.3 动画与特效 附录D JavaScript工具 D.1 包管理 D.2 模块加载器 D.3 模块打包器 D.4 编译/转译工具及静态类型系统 D.5 高性能脚本工具 D.6 编辑器 D.7 构建工具、自动化系统和任务运行器 D.8 代码检查和格式化 D.9 压缩工具 D.10 单元测试 D.11 文档生成器

DOM

第14章 DOM
    14.1节点层级
    14.2 DOM编程
    14.3 MutationObserver接口
    14.4 小结
第15章 DOM扩展
    15.1 Selectors API
    15.2 元素遍历
    15.3 HTML5
    15.4 专有扩展
    15.5 小结
第16章 DOM2和DOM3
    16.1 DOM的演进
    16.2 样式
    16.3 遍历
    16.4 范围
    16.5 小结
2023-05-25
Ajax
2023-05-25 ~ 2023-09-07
什么是 Ajax ?
2023-05-25
Canvas
2023-05-25 ~ 2023-09-07

> 近来要开发一个手写板程序,顺便来系统回顾一下 Canvas 这个东东……

🔔 本篇摘录自 《学习 HTML5 Canvas 这一篇文章就够了》 ,写的真不错。

<canvas> 是 HTML5 新增的一个可以使用脚本(通常为 JavaScript)在其中绘制图像的 HTML 元素。

![[assets/Pasted image 20230525170231.png|400]]

> 上图就是使用 canvas 绘制出来的

Canvas 是由 HTML 代码配合高度和宽度属性而定义出的可绘制区域。JavaScript 代码可以访问该区域,类似于其他通用的二维 API,通过一套完整的绘图函数来动态生成图形。

2023-05-25
JS 中的拖放
2023-05-25 ~ 2023-09-07

拖放是一种常见的特性,即抓取对象以后拖到另一个位置。在 HTML5 中,拖放是标准的一部分,任何元素都能够拖放。

*注:Internet Explorer 9+, Firefox, Opera, Chrome, 和 Safari 支持拖动。

2023-05-25
React
2023-05-25 ~ 2024-08-13

📔 快速入门 – React 中文文档

具体安装及引入细节,请直接参考官方文档。

:: React 的出新文档了,内容的组织结构也有所变化,整体来说更加突出函数式组件的作用了,毕竟有了 Hooks 嘛~ 来一个新的章节来摘录一下,准备在新的项目中应用 React ,反正用什么我说了算,哈哈~ ↗️ 「 [[#新文档]] 」

React 是一个用于构建用户界面的 JavaScript 库,你可以用它给简单的 HTML 页面增加一点交互,也可以开始一个完全由 React 驱动的复杂应用。

> 对的,它只是一个 UI 库而已 !!!

2023-05-25
前端浅谈
2023-05-25 ~ 2025-01-29
本文不涉及具体的细节,浅谈一下 Web 前端的 1 2 3 ……
2023-05-25
文件转换
2023-05-25 ~ 2023-09-07
JavaScript 中的 file、blob 和 base64 。
2023-05-25
模块化编程
2023-05-25 ~ 2023-09-07

每一个领域的内容,都要有先问一下 – 是什么?为什么?做什么?怎么做?

  • 是什么?简述概念;
  • 为什么?历史发展,出现的原因,优缺点;
  • 做什么?主要应用场景;
  • 怎么做?具体使用方法步骤。
2023-05-25
浏览器
2023-05-25 ~ 2023-09-07

了解浏览器,它已经成为主流的信息传递方式,并将持续壮大!
了解它的内核、构成及动作方式。

![[assets/Pasted image 20230525174227.png|300]]

> 蒂姆·伯纳斯·李 (1955.06.08 - )

2017 年,他因 “发明万维网、第一个浏览器和使万维网得以扩展的基本协议和算法” 而获得 2016 年度的图灵奖。

2023-05-25
跨域
2023-05-25 ~ 2023-09-07

i.e. Cross Domain

🔔 本文摘录自 浏览器同源政策及其规避方法

2023-05-25
防抖与节流
2023-05-25 ~ 2023-09-07

i.e. Debounce and Throttle

为什么需要防抖和节流?它们是什么?有什么区别?适用场景是什么?