javascript-mastery
掌握 JavaScript:完整参考指南
在一个全面的参考资料中学习 JavaScript 基础知识和高级概念。从原始类型到异步模式,提供清晰的解释和实用的代码示例。
下载技能 ZIP
在 Claude 中上传
前往 设置 → 功能 → 技能 → 上传技能
开启并开始使用
测试它
正在使用“javascript-mastery”。 解释 JavaScript 中闭包是如何工作的
预期结果:
闭包是一个函数,即使在其词法作用域之外执行,它也能记住该作用域。示例:一个计数器函数在多次调用之间维护一个私有 count 变量,每次调用返回的函数时都会递增。
正在使用“javascript-mastery”。 输出是什么:console.log(1); setTimeout(() => console.log(2), 0); Promise.resolve().then(() => console.log(3)); console.log(4);
预期结果:
输出:1, 4, 3, 2。解释:同步代码先运行(1, 4),然后是微任务如 Promise 回调(3),最后是宏任务如 setTimeout(2)。
安全审计
安全This skill is a JavaScript educational reference document containing code examples for learning purposes. Static analysis flagged 89 patterns (template literals, fetch examples, documentation URLs) that are false positives - all are JavaScript syntax examples in markdown, not executable code. No security risks detected. Safe for publication.
质量评分
你能构建什么
学习 JavaScript 基础知识
初学者可以使用此技能通过清晰的示例和解释来理解核心 JavaScript 概念。
调试棘手行为
经验丰富的开发者在遇到意外 JavaScript 行为(如类型转换或 this 绑定问题)时可以参考此技能。
教学和代码审查
教育者和团队负责人可以在教学 session 或代码审查期间使用此技能来解释 JavaScript 概念。
试试这些提示
用一个简单的例子解释 JavaScript 闭包是如何工作的。
JavaScript 中 == 和 === 有什么区别?展示各自使用场景的示例。
为什么这段代码输出 undefined 而不是预期值?解释涉及的作用域规则。
展示如何在 JavaScript 中处理多个异步操作。用示例比较 Promise.all、Promise.race 和顺序 await。
最佳实践
- 使用严格相等(===)而不是松散相等(==)以避免类型转换错误
- 优先使用 let 和 const 而不是 var,以获得块级作用域变量并避免提升问题
- 使用 async/await 编写更清晰的异步代码,而不是嵌套回调或 Promise 链
避免
- 使用 var,它是函数作用域的,可能导致提升混淆
- 回调地狱 - 嵌套多个回调而不是使用 Promises 或 async/await
- 修改用 const 声明的对象,这可能导致意外的变更