JavaScript 视图 October 9, 2025 1495 words • 8 min read 在前端开发中,视图 (View) 是用户在浏览器中看到和交互的一切——也就是用户界面(UI)。JavaScript 的核心任务之一就是**动态地操纵这个视图**,以响应用户操作或数据变化。 最原始的视图操作方式是直接使用 DOM API。 ```javascript // 1. 获取一个 DOM 元素 const container = document... #JavaScript#Frontend
Webpack October 9, 2025 2482 words • 13 min read 随着项目越来越复杂,我们会使用 ES6 模块将代码拆分到多个文件中,并引入许多第三方库。这会导致浏览器需要发起大量的 HTTP 请求来加载这些零散的文件,严重影响页面性能。 **打包工具 (Bundler)** 正是为了解决这个问题而生。它是一个构建工具,能够将我们项目中所有散落的 JavaScript 模块、CSS... #JavaScript#JS Tools
JavaScript 实现 Tic Tac Toe (2) October 9, 2025 1613 words • 9 min read 我们把 displayController 单独作为一个模块。这个模块完成了视图的工作、并提前做好一些绑定工作。 我们可以把一些固定的、不依赖特定情况的 DOM 操作先写好,这样就不需要在主文件 `script. js` 中写重复的代码了,主文件只需要负责把这些模块初始化、连接好即可。 我们把需要做绑定的组件传进来作为参数: ```javascript function... #JavaScript#Program Language#Async#Design Pattern
npm 包管理器 October 9, 2025 1185 words • 6 min read npm 是 JavaScript **包管理器 (Package Manager)**。它主要由两部分组成: 1. **一个在线仓库 (Registry)**:一个巨大的、公开的数据库,存储了海量的、可重用的 JavaScript 代码包(Packages)。这些包可以是小型的辅助函数库(如 `lodash`),也可以是完整的前端框架(如 `React`, `Vue`)。 2... #JavaScript#Program Language#Frontend
JavaScript 实现 Tic Tac Toe (1) October 9, 2025 841 words • 5 min read > 第一部分主要讲解井字棋游戏初始化的一些东西,之后会讲一些技术性的东西。 下面我们通过实现一个简单的井字棋游戏来系统梳理一下前面的一些知识。 我们写一个最简单的 HTML 和 CSS: ```html <. doctype html> <html lang="en"> <head> <meta charset="utf-8"> <meta name="viewport"... #JavaScript#Program Language#Async#Design Pattern
发布——订阅模式 October 9, 2025 565 words • 3 min read > 在实现 [TicTacToe](https://www. theodinproject... #JavaScript#Program Language#Async
js-module October 9, 2025 1295 words • 7 min read 在 ES6 模块出现之前,如果在 HTML 中引入多个 JavaScript 文件,它们会共享同一个全局作用域。这会导致变量命名冲突和不可预期的行为。 ```html <. html --> <script src="one... #JavaScript#Program Language#Frontend
JavaScript Class October 9, 2025 1314 words • 7 min read 在 ES6 之前,我们使用构造函数和原型链来实现对象的创建和继承。ES6 引入了 `class` 关键字,它提供了一种更清晰、更简洁的语法。 > Class 的底层实现仍然是基于原型继承。因此,`class` 被称为“语法糖”。 **构造函数 vs. Class 写法对比:** ```javascript // 传统构造函数写法 function Player(name, marker)... #JavaScript#Program Language#Frontend
闭包 October 8, 2025 1441 words • 8 min read JavaScript 有如下的作用域: - **全局作用域 (Global Scope)**: 在所有函数和代码块 `{}` 外面定义的变量,在代码的任何地方都可以被访问。 > 过度使用全局变量会造成“全局污染”。 - **函数作用域 (Function Scope)**: 使用 `var` 在一个函数内部声明的变量,它的“地盘”就是整个函数。 - **块级作用域 (Block... #JavaScript#Program Language#Frontend
JavaScript 原型链 October 7, 2025 1520 words • 8 min read 我们可以在构造函数里为对象添加方法,但这存在一个严重的性能问题。 ```javascript function Player(name, marker) { this. name = name; this... #JavaScript#Frontend