Описание Promise расходиться с официальной спецификацией
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 32/100
- Tipo di issue
- Documentazione
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Ferma
- Stack tecnologico
- javascript
- Ambito
- documentation
Direzione di ricerca
Rivedi le sezioni indicate di promise-api e async-await, confrontandone la terminologia e le affermazioni con la specifica ECMAScript. Verifica la spiegazione di Promise.resolve, la gestione dei thenable e il confronto con async/await. Il lavoro è completato quando le spiegazioni interessate sono tecnicamente accurate, coerenti con la specifica e supportate da esempi o riferimenti appropriati.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Если для Вас важно соответствовать официальной спецификации,
то на странице https://learn.javascript.ru/promise-api ошибочно заявлено, что
Promise **API**
В **классе** Promise есть 5 статических методов. Давайте познакомимся с ними.
Согласно стандарту ECMAScript - Promise это Standard Object.
То есть утверждение, о том, что Promise это API
а так же, что это класс - не отвечает заявленному в спецификации.
Далее на этой же странице
https://learn.javascript.ru/promise-api#promise-resolve-reject
Для Promise.resolve не описано поведение для случаев, когда в качестве значения
используется обьект содержащий метод then
Так же содержит ошибочное утверждение, что
Методы Promise.resolve и Promise.reject редко используются в современном коде, так как синтаксис async/await (мы рассмотрим его чуть позже) делает их, в общем-то, не нужными.
Методы resolve и reject используется регулярно там, где активно работают с асинхронными задачами, которые должны (или могут) выполняться без сохранения порядка их выполнения. Например с Promise.all
Синтаксис async/awaite не может быть им заменой, в силу того, что представляет из себя последовательное
выполнения задач.
Кроме этого, использование async заставляет функцию работать схожим с генератором образом, где каждый awaite приводит в сохранению всего текущего контекста, с полсдеющим его восстановлением. Что драматически сказывается
на производительности. То есть код, который использует промисы, но не испольузет async/awaite как потрбеляет меньше ресурсов, так и выполняется быстрее.
Страница https://learn.javascript.ru/async-await
Как и promise.then, await позволяет работать с промис–совместимыми объектами. Идея в том, что если у объекта можно вызвать метод then, этого достаточно, чтобы использовать его с await.
Некорректно, все обьекты которые содержат метод then называть промис совместимыми.
Уже хотя бы потому, что если метод не будет обслуживать Resolve или Reject функции, то подобный промис
никогда не будет разрешен.
Строго говоря, then - обьекты, обслуживающие (res) => res( result) это дань реактивному программированию,
и к промисам это имеет отношение косвенное. То есть промисы, реализуют контарт then для того, чтобы их
можно было использовать при реактивном программирование без дополнительных костылей.
- Lingua principale
- HTML
- Stelle
- 4.1k
- Fork
- 922
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Guida per i contributori
Apri la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di javascript-tutorial/ru.javascript.info
-
suggestion: tutorial
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
javascript-tutorial/ru.javascript.info#2187 · 1 commento ·
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
javascript-tutorial/ru.javascript.info#2163 · 1 commento ·
-
[Баг]: Apertabug
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 65/100
-
[Предложение: учебник]: Apertasuggestion: tutorial
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
-
suggestion: tutorial
Difficoltà 3/5 1-2 giorni Idoneità per principianti 68/100
Tutte le issue di javascript-tutorial/ru.javascript.info
Issue simili
-
triage
Difficoltà 1/5 1-3 ore Idoneità per principianti 88/100
-
enhancement
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
-
feature pydanty:is-working
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 88/100
pydantic/pydantic-ai#8647 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
-
:watch: Not Triaged dotnet-fsharp/svc
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 90/100