Agent skill

JavaScript Language Patterns

Modern JavaScript (ES2022+) patterns for clean, maintainable code.

Stars 163
Forks 31

Install this agent skill to your Project

npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/data/language

Metadata

Additional technical details for this skill

labels
javascript language es6 modern-js
triggers
{
    "files": [
        "**/*.js",
        "**/*.mjs",
        "**/*.cjs"
    ],
    "keywords": [
        "const",
        "let",
        "arrow",
        "async",
        "await",
        "promise",
        "destructuring",
        "spread",
        "class"
    ]
}

SKILL.md

JavaScript Language Patterns

Priority: P0 (CRITICAL)

Implementation Guidelines

  • Variables: const default. let if needed. No var.
  • Functions: Arrows for callbacks. Declarations for top-level.
  • Async: async/await + try/catch.
  • Objects: Destructuring, Spread ..., Optional Chain ?., Nullish ??.
  • Strings: Template literals ${}.
  • Arrays: map, filter, reduce. No loops.
  • Modules: ESM import/export. Export only what is necessary.
  • Classes: Use #private fields for true privacy.

Anti-Patterns

  • No var: Block scope only.
  • No ==: Strict ===.
  • No new Object(): Use literals {}.
  • No Callbacks: Promisify everything.
  • No Mutation: Immutability first.

Code

javascript
// Modern Syntax
const [x, ...rest] = items;
const name = user?.profile?.name ?? 'Guest';

// Async + Error Handling
async function getUser(id) {
  const res = await fetch(`/api/${id}`);
  return res.json(); // Errors propagate
}

// Private Fields
class Service {
  #key;
  constructor(k) {
    this.#key = k;
  }
}

Reference & Examples

For advanced patterns and functional programming: See references/REFERENCE.md.

Related Topics

best-practices | tooling

Didn't find tool you were looking for?

Be as detailed as possible for better results