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.
Преподавание и код-ревью
Преподаватели и лиды команд могут использовать этот навык для объяснения концепций JavaScript во время обучающих сессий или код-ревью.
これらのプロンプトを試す
Объясните, как работают замыкания в JavaScript, на простом примере.
В чём разница между == и === в JavaScript? Покажите примеры, когда следует использовать каждый из них.
Почему этот код выводит undefined вместо ожидаемого значения? Объясните задействованные правила области видимости.
Покажите, как обрабатывать несколько асинхронных операций в JavaScript. Сравните Promise.all, Promise.race и последовательный await с примерами.
ベストプラクティス
- Используйте строгое равенство (===) вместо нестрогого (==), чтобы избежать ошибок приведения типов
- Отдавайте предпочтение let и const вместо var для блочно-ограниченных переменных и во избежание проблем с hoisting
- Используйте async/await для более чистого асинхронного кода вместо вложенных колбэков или цепочек promise
回避
- Использование var, которая ограничена областью функции и может привести к путанице с hoisting
- Ад колбэков — вложение множества колбэков вместо использования Promises или async/await
- Изменение объектов, объявленных с const, что может вызвать неожиданные мутации