javascript-mastery

JavaScript全面参考指南,涵盖开发者必须掌握的33+核心概念。从基础数据类型与闭包等核心原理,到异步编程(async/await)与函数式编程等进阶范式。适用于解释JS概念、调试JavaScript问题或讲授JavaScript基础知识的各类场景。

作者

安装

热度:0

下载并解压到你的 skills 目录

复制命令,发送给 OpenClaw 自动安装:

下载并安装这个技能 https://openskills.cc/api/download?slug=sickn33-skills-javascript-mastery&locale=zh&source=copy

JavaScript Mastery - 33+ 核心 JavaScript 概念全掌握

技能概述

一个涵盖 33+ JavaScript 核心概念的全面参考指南,从基础类型和闭包到异步编程和函数式编程,帮助开发者深入理解 JavaScript 语言特性。

适用场景

1. 解释 JavaScript 概念


当你需要向他人或自己解释某个 JavaScript 概念时,此技能提供清晰、准确的定义和代码示例,涵盖从原始类型到原型链的广泛主题。

2. 调试 JavaScript 问题


遇到奇怪的 JavaScript 行为或 bug 时,可以快速查找相关概念(如类型转换、作用域、this 绑定等)来理解问题根源。

3. 准备技术面试


涵盖前端面试中最常见的 JavaScript 知识点,包括闭包、Event Loop、异步编程、原型继承等高频面试题。

核心功能

1. 7 大知识体系分类


  • 基础篇: 原始类型、类型转换、相等运算

  • 作用域篇: 作用域类型、闭包、变量声明

  • 函数篇: 调用栈、变量提升、this 关键字

  • 异步篇: Event Loop、回调、Promise、async/await

  • 函数式编程: 高阶函数、纯函数、柯里化、组合

  • 对象篇: 原型继承、对象方法

  • 现代 JS: 解构、展开运算符、模块、可选链
  • 2. 代码示例丰富


    每个概念都配有实用的代码示例,既有正确写法也有常见陷阱的对比,帮助快速理解和避免踩坑。

    3. 快速参考卡片


    提供核心概念的快速对照表,包括 == vs ===var vs let?? vs || 等易混淆点的清晰对比。

    常见问题

    JavaScript 中 == 和 === 有什么区别?

    == 是宽松相等,会进行类型转换后再比较;=== 是严格相等,不进行类型转换。例如 "5" == 5 返回 true,而 "5" === 5 返回 false。推荐始终使用 ===,除非你有特殊理由需要类型转换。

    什么是闭包?什么时候使用?

    闭包是一个函数与其词法作用域的组合,即使函数在其定义作用域之外执行,仍能访问外部变量。常见使用场景包括:数据隐私(模块模式)、函数工厂、部分应用和记忆化。例如:

    function createCounter() {
      let count = 0;
      return {
        increment() { return ++count; },
        getCount() { return count; }
      };
    }

    Event Loop 是如何工作的?

    JavaScript 的 Event Loop 负责协调代码执行、事件处理和回调函数。执行顺序为:1) 同步代码(调用栈);2) 微任务(Promise 回调);3) 宏任务(setTimeout、I/O)。这就是为什么 Promise.resolve().then() 中的代码比 setTimeout(..., 0) 先执行的原因。